Microsoft Updates its .NET Language Strategy

Almost three years after it said that it would no longer add new features to Visual Basic, Microsoft today provided an update on its .NET language strategy. And the short version is, not much has changed.

“Microsoft offers three languages on the .NET platform – C#, F#, and Visual Basic,” Microsoft’s Kathleen Dollard writes. “The new .NET Language Strategy updates all three. It also includes a description that shares our perspective about each language … You won’t find big changes. We remain committed to full support for all three languages. We are also committed to open source, backwards compatibility, and aggressive language evolution for C# and F#.”

Windows Intelligence In Your Inbox

Sign up for our new free newsletter to get three time-saving tips each Friday — and get free copies of Paul Thurrott's Windows 11 and Windows 10 Field Guides (normally $9.99) as a special welcome gift!

"*" indicates required fields

This field is for validation purposes and should be left unchanged.

And there it is: Visual Basic remains the outlier in the .NET language strategy, a legacy product that “will generally adopt a consumption-only approach and avoid new syntax,” meaning no new language features, like those given to C# and F#. That said, VB will adapt as needed to support new .NET APIs and types built on new .NET runtime features, Microsoft says. “We will focus on existing scenarios supported by VB and do not anticipate adding support for new workloads, such as web front ends or cross-platform UI frameworks,” the Microsoft Learn website notes of VB.

C# is the most widely-used .NET language of course, and it will “keep evolving to meet the changing needs of developers and remain a state-of-the-art programming language,” Microsoft says. “We will innovate eagerly and broadly in collaboration with the teams responsible for .NET libraries, developer tools, and workload support, while being careful to stay within the spirit of the language. Recognizing the diversity of domains where C# is being used, we will prefer language and performance improvements that benefit all or most developers and maintain a high commitment to backwards compatibility. We will continue to empower the broader .NET ecosystem and grow its role in C#’s future, while maintaining stewardship of design decisions.”

F# is perhaps less well-known than the other two .NET languages. It is a so-called “functional” language, though Microsoft describes it as “a universal programming language for writing succinct, robust and performant code.” As with C#, F# will will support .NET platform improvements, and it will maintain interoperability with new C# features. Microsoft also notes that it will simplify the F# language to “lower the barrier to entry for new developers and organizations … Improving the approachability of F# includes ongoing efforts to rephrase error messages and simplifying language features.”

Tagged with

Share post

Please check our Community Guidelines before commenting

Windows Intelligence In Your Inbox

Sign up for our new free newsletter to get three time-saving tips each Friday

"*" indicates required fields

This field is for validation purposes and should be left unchanged.

Thurrott © 2024 Thurrott LLC