Skip to content

Latest commit

 

History

History
41 lines (25 loc) · 3.02 KB

languages.md

File metadata and controls

41 lines (25 loc) · 3.02 KB
title description author ms.author ms.date ms.topic
.NET Managed languages strategy
Each .NET language is unique. C# is the most widely used language and the language most of .NET is written in. F# explores new language possibilities and the community provides a rich experience across platforms. We remain committed to Visual Basic and continue to invest in maintaining C# interop and Visual Studio features for folks that love Visual Basic or want a stable language.
billwagner
wiwagn
02/06/2023
conceptual

Microsoft .NET language strategy

Microsoft offers 3 languages on the .NET platform – C#, F# and Visual Basic. In this article, you’ll learn about our strategy for each language. Look for links to additional articles on how these strategies guide us and ways to learn more about each language.

C#

C# is a cross-platform general purpose language that makes developers productive while writing highly performant code. With millions of developers, C# is the most popular .NET language. C# has broad support in the ecosystem and all .NET workloads. Based on object-oriented principles, it incorporates many features from other paradigms, not least functional programming. Low-level features support high-efficiency scenarios without writing unsafe code. Most of the .NET runtime and libraries are written in C#, and advances in C# often benefit all .NET developers.

Our strategy for C#

[!INCLUDE csharp]

You can read more about how this strategy guides us in the C# guide.

F#

F# is a succinct, robust and performant language that is expression-based and immutable by default. It focuses on expressive power, simplicity and elegance and is used by many thousands of developers that appreciate its pragmatic function-first approach to .NET. F# offers the full power of .NET and works well with C# for mixed language solutions. The community makes significant contributions to the compiler and runtime, as well as a broad array of F# tools and frameworks.

Our strategy for F#

[!INCLUDE fsharp]

You can read more about how this strategy guides us in the F# guide.

Visual Basic

Visual Basic (VB) has a long history as an approachable language favoring clarity over brevity. Its hundreds of thousands of developers are concentrated around the traditional Windows-based client workloads where VB has long pioneered great tooling and ease of use. Today’s VB developers benefit from a stable and mature object-oriented language paired with a growing .NET ecosystem and ongoing tooling improvements. Some .NET workloads are not supported in VB, and it is common for VB developers to use C# for those scenarios.

Our strategy for Visual Basic

[!INCLUDE visual-basic]

You can read more about how this strategy guides us in the Visual Basic guide.