Live data from Hacker News

Update to the .NET language strategy

devblogs.microsoft.com

71–80 of 151 posts

Re: Update to the .NET language strategy

#71
post #18

Earlier quoted context omitted.

Visual Basic had already become a second-class citizen fifteen years ago, when I worked on its compiler team. All the actual design work happened in the C# world, and our job was just to tag along and mimic whatever they had come up with. I had taken the talk of "co-evolution" at face value before going to work there, but after seeing where devdiv actually put its time and attention, that was clearly just a PR story…

> All the actual design work happened in the C# world, and our job was just to tag along and mimic whatever they had come up with. What's the unique guiding philosophy or use case of VB that would justify developing bleeding edge new language features in VB first? Maybe I am just being overly critical here but I just don't see how the use cases which VB accommodates would benefit from getting new features before C# g…

I always saw Basic as the language for non-professionals who wanted to create their own software: hobbyists, amateurs, small business owners, people who have an idea and want to automate whatever it is they're doing, but aren't trying to write code for a living. C#, by contrast, is a proper mainstream language for professional programmers.

Re: Update to the .NET language strategy

#72
post #68
post #67

Earlier quoted context omitted.

I mentioned the official Dotnet SDK. You're out of date; it's not called Dotnet Core anymore; just Dotnet. Mono is not dead. It's used in a bunch of commercial software for one thing, including Unity and Godot. > If it's not it's an extremely niche thing of people who want to write desktop apps for linux in C#, a tiny slice of the market. Can you think of why, other than marketshare, that I might mention Linux C# des…

> it's not called Dotnet Core anymore; just Dotnet. The platform has been renamed to ".NET" (since v5), the SDK is ".NET SDK" the executable is named "dotnet", but it has never been branded that way.

The point I was making is that what was once called .NET Core is now just .NET, after the merge with what was once called .NET framework. However, I think the name .NET is annoying to read and type, and it's ambiguous in a similar manner to Go, so I say Dotnet and Golang. Dotnet is literally just .net with the dot spelled out. It's not really a separate name.

Re: Update to the .NET language strategy

#73
post #41

> F# explores new language possibilities and the community provides a rich experience across platforms. There are several interesting observations to be had here. For one, F# already explored (past tense) new language features and has long been essentially feature complete. It gets little features here and there, which are generally quality of life type of things (like anonymous records, for example). Another interpr…

> I wish people would embrace it like Elixir has been embraced.

F# is a lot more popular than Elixir.

Re: Update to the .NET language strategy

#76

Earlier quoted context omitted.

Huh? F# has Microsoft Research building it and its libraries and optimizing compilers, no?

I think GP gave a cynical, but fairly accurate summary. If F# is worked on by MS research, they certainly didn't communicate that in the strategy they just published. C# >We will keep evolving C# to meet the changing needs of developers and remain a state-of-the-art programming language. We will innovate eagerly and broadly in collaboration with the teams responsible for .NET libraries, developer tools, and workload…

[deleted]

Re: Update to the .NET language strategy

#77
post #41

> F# explores new language possibilities and the community provides a rich experience across platforms. There are several interesting observations to be had here. For one, F# already explored (past tense) new language features and has long been essentially feature complete. It gets little features here and there, which are generally quality of life type of things (like anonymous records, for example). Another interpr…

They should release a roadmap, instead of this bland talk about strategy.

https://themesof.net/

Re: Update to the .NET language strategy

#78
post #41

> F# explores new language possibilities and the community provides a rich experience across platforms. There are several interesting observations to be had here. For one, F# already explored (past tense) new language features and has long been essentially feature complete. It gets little features here and there, which are generally quality of life type of things (like anonymous records, for example). Another interpr…

> F# already does not support several C# features, for good reason, maintaining only what it needs for interoperability purposes.

Could you enumerate some of these? My team is still using .NET Framework, so we're missing out on the new C# goodness.

Re: Update to the .NET language strategy

#79

Earlier quoted context omitted.

.Net itself is fundamentally OOP. Lambdas are implemented as classes with an Invoke method, F# enums are implemented as classes with variants as subclasses, etc. So if "overcoming OOP defaults" is the goal then making a new .Net lang that isn't OOP doesn't achieve much. So it would have to be either be a new native language, or a new managed language that also comes with a whole new managed runtime. For the former, R…

How come classes are being used in a functional language?

Classes are part of the .NET intermediate representation (CIL) that the compilers emit and that the virtual machine executes. OOP is baked in at a low level.

Re: Update to the .NET language strategy

#80
post #38

Hot take but I wish they’d start a new lang in the spirit of what’s happening in swift/Kotlin instead of evolving C#. I use it everyday. I love the new pattern matching, it simplifies a lot of gnarly reflective type checks and feels good. Records are nice too. I see discriminant unions are coming soon. But they’re painting themselves into the corner in terms of syntax and overcoming OOP defaults. A fresh start would…

Where does TypeScript fit into this? It's a wildly successful language from Microsoft that's also interpreted but doesn't use the CLR.

Disclaimer: I work at Microsoft, but not in the Developer Division.

Post reply on HN