RemObjects 26.08.2020, 11:14 Uhr

Mercury/VB++: VB.NET für neue Plattformen

Microsoft wird VB.NET nicht mehr weiterentwickeln. Mercury/VB++ ist eines der Projekte, die VB.NET kompatibel sein und zugleich neue Sprachfeatures einführen möchte.
(Quelle: docs.elementscompiler.com/Mercury)
Visual Basic .NET ist zwar auch im neuesten .NET 5.0 noch enthalten, hat aber – wie schon im März angekündigt wurde – keine neuen Sprachfeatures mehr enthalten. Viele sehen VB.NET deshalb als sterbende Sprache. Gleichzeitig hat VB.NET noch eine große Zahl an Nutzern, wie beispielsweise das Tiobe-Ranking beweist, in dessen aktueller August-Auswertung Visual Basic auf Platz 6 steht – vor JavaScript, getoppt nur von C, Java, Python, C++ und C#. Und sogar das klassische Visual Basic, das schon seit mehr als 20 Jahren nicht weiterentwickelt wird, kommt noch auf Rang 17 und liegt damit beispielsweise vor Rust.
Deshalb gibt es in der Community Anstrengungen eine VB.NET-kompatible Sprache zu entwickeln und diese an die Erfordernisse moderner Plattformen anzupassen. Einer dieser Ansätze ist die Sprache VB++, Codename Mercury aus dem Hause RemObjects, aus dem bereits eigene Varianten von C#, Pascal, Go Java und Swift stammen. Aktuell befindet sich die RemObjects-Version von VB.NET namens Mercury im Beta-Stadium sagte Entwickler Theo Verweij, der für RemObjects als Berater in Sachen VB.NET tätig ist. Das Team hofft, Mercury noch in diesem Jahr veröffentlichen zu können.
Die Webseite zu Mercury beschreibt die Sprache als rückwärtskompatibel zu VB.NET. Laut Verweij soll "Mercury zu etwa 98 Prozent codekompatibel mit VB.NET sein, fast alle Projekte würden von Mercury aus ohne Benutzereingriff laufen". Zudem sagt die Webseite, dass Entwickler Mercury verwenden können, um bestehende VB.NET-Projekte zu kompilieren und gleichzeitig ihre VB-Fähigkeiten nutzen können, um Code zu schreiben, der unter anderem auf folgende Plattformen zielt:
  • .NET, .NET Core, Mono und ASP.NET Core.
  • Die Java-VM und jedes Gerät, auf dem Java-Code ausgeführt wird. Android, sowohl das Java-basierte SDK als auch das CPU-native NDK.
  • iOS, macOS, tvOS und watchOS.
  • Windows (CPU-nativ).
  • Linux (CPU-nativ).
  • WebAssembly, für Webbrowser und Node.js.
Dieser Code soll zudem mit Code aus den anderen fünf RemObjects-Sprachen gemischt werden können.
Weitere Informationen zu Mercury finden Sie auf der Website zum Projekt, auf der Elements-Docs-Seite zu Mercury (die noch sagt, Mercury sei im Alpha-Stadium) und auf der Twitter-Seite von Theo Verweij unter https://twitter.com/theo_verweij.


Das könnte Sie auch interessieren