Live data from Hacker News

Update to the .NET language strategy

devblogs.microsoft.com

51–60 of 151 posts

Re: Update to the .NET language strategy

#51

Earlier quoted context omitted.

VB.NET should never have happened. It has only superficial similarity with VB6. It was sold as upgrade path from VB6 but that never worked.

Perhaps, but I think it offered people who didn't have exposure to C-like language syntax, an easier upgrade path for their own skills. I was writing stuff in VBA and a little VB6. The move to VB.NET was made easier because of the synax similarities. My move from VB.NET to C# was made easier because by then I understood the framework, and it was just a matter of learning the syntax differences. Maybe that's not such…

I followed the same path. Muscle memory is a big deal. Muscle memory is what makes you productive. It’s why those syntactic things actually matter.

Re: Update to the .NET language strategy

#52
post #19

How well are F# and C# supported on the Linux platform?

Great. Just install the .NET SDK, and you get both languages. You can start an F# REPL immediately after installing with `dotnet fsi`.

I remember that being missing for years. Nice.

Re: Update to the .NET language strategy

#53
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…

Your take is cold, or lukewarm at worst.

The language is getting complicated.

Re: Update to the .NET language strategy

#55
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…

.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…

Yeah I argree, making a new lang for a vm runtime doesn’t make as much sense when rust is right there, because the vm itself has a lot of baggage and limitations (OOP baked in, start up time,etc). The dotnet team seems to be moving mountains to squeeze more performance out of the VM, which is awesome, but how much further can it go?

Re: Update to the .NET language strategy

#56
post #19

Earlier quoted context omitted.

Great. Just install the .NET SDK, and you get both languages. You can start an F# REPL immediately after installing with `dotnet fsi`.

I remember that being missing for years. Nice.

The transition from .NET Framework to .NET Core and then to .NET 5+ was rough on F#, but it's been a net positive in the end. The .NET SDK and thus F# is one of the easiest things to install on nearly machine.

Re: Update to the .NET language strategy

#57
post #14

Earlier quoted context omitted.

First class. I would wager that most new .NET projects are primarily targetting Linux for deployment.

* for serverside

Unity3D is probably one of the most widely used cross platform native app development platforms, and it’s taking c# .net code to Linux, macOS, android, iOS and browsers via wasm.

Re: Update to the .NET language strategy

#58
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…

.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?

Re: Update to the .NET language strategy

#59
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.
Post reply on HN