InfoQ Homepage News Mercury Brings Visual Basic to Feature Parity with C# and Adds Multiple Platform Support
Mercury Brings Visual Basic to Feature Parity with C# and Adds Multiple Platform Support
This item in japanese
May 12, 2021 2 min read
Write for InfoQ
Feed your curiosity. Help 550k+ globalsenior developers
each month stay ahead.Get in touch
RemObjects Mercury refreshes Visual Basic for .NET by adding support for current .NET features while also making it available for more platforms, including WebAssembly, iOS, Android, and Linux.
Mercury attempts to fill a gap created by Microsoft announcement that they will not evolve Visual Basic as a language. This implies that "future features of .NET Core that require language changes may not be supported in Visual Basic".
As .NET (and C#) evolve, Mercury will keep being updated to support the latest platform versions and features, and also to be kept compatible with features added to new versions of C#, as it evolves.
According to RemObjects, besides being 99.9% compatible with Visual Basic, Mercury adds a number of new language features, including mapped types, zero-overhead inline types; extension types, which can be used to add new methods and properties to existing types; lazy properties; interface delegation, which can be used to delegate the implementation of an interface to a local property of a class; Records and many more.
Mercury is part of RemObject's Elements, a multi-platform compiler and toolchain with support for C#, Swift, Go, and others. This makes it possible to use Mercury on all platforms where Elements is available, which include .NET, iOS and macOS, Android, Java, Linux, native Windows, and WebAssembly. Mercury gives access to all native APIs on each platform. For example, you can use the Android SDK or NDK to create Android apps, Cocoa and CocoaTouch for macOS and iOS apps, and so on. In particular, to make it easier to use Cocoa's APIs, Mercury includes multi-part method names.
As a final note on Mercury, it is worth noting it can easily interoperate with the rest of languages supported by Elements, so you can mix Visual Basic with C# in the same project, or with any other of the available languages.
With the exception of Swift, which you can get for free, Elements and related IDEs on all platforms are premium products available under a subscription model. According to RemObjects, the compiler will remain functional indefinitely after you cancel the subscription, but the IDEs will stop working, so you will not be able to use them anymore and will be required instead to use the command line to run the compiler.
RemObjects Mercury should not be confused with the Mercury language, a logic/functional programming language inspired in Prolog and extending it to enable the creation of complex systems.
This content is in the .NET topic
Related Topics:
-
Related Editorial
-
Related Sponsors
-
Popular across InfoQ
-
Microsoft Patches Critical ASP.NET Core Vulnerability with 9.9 Severity Score
-
GitHub Expands Copilot Ecosystem with AgentHQ
-
Redis Critical Remote Code Execution Vulnerability Discovered after 13 Years
-
Monzo’s Real-Time Fraud Detection Architecture with BigQuery and Microservices
-
AWS Launches Capabilities by Region Tool
-
Architecture Should Model the World as it Really is: a Conversation with Randy Shoup
-
Related Content
The InfoQ Newsletter
A round-up of last week’s content on InfoQ sent out every Tuesday. Join a community of over 250,000 senior developers. View an example