Comment

Comment by delta_p_delta_x

.NET languages are amazing. It's fairly easy to program in any style in C# now: imperative, or OO with massive inheritance hierarchies, or even functional-only with LINQ and things like switch expressions and primary constructors (mentioned in the article). C# now also has top-level statements, so no need for `public class Main { public static void main() {}}`.

The .NET standard library is by far the biggest I've ever seen—it's not merely 'batteries included'; it's 'everything under the Sun included'. NET also comes with a straightforward package manager for third party libraries (NuGet).

There are a variety of development environments available—VS2022, VS Code, Rider, command-line tools. Speaking of command-line tools, the `dotnet` bootstrapper makes it really easy to get started with any sort of project.

The compiler and static analysis tool set, Roslyn, is itself increasingly written in C#, having migrated from C++. With NET 7, code can now be compiled to native binaries ahead-of-time, and there's even an experimental LLVM backend[1].

One can write code for almost any use case (except perhaps embedded) with .NET. It really needs to be used more.

And needless to say: .NET is open-source and cross-platform.

[1]: https://github.com/dotnet/runtimelab/tree/feature/NativeAOT-...

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton