Hacker News new | ask | show | jobs
by thrower123 1669 days ago
F# is really, really bleeding into C#. There'll be a convergence, for all intents and purposes, by about C# 15 at this rate.
2 comments

Ehhh, not really. It really depends on what you mean by convergence. You could add every single one of F#'s features into C#, and I still wouldn't consider them to be same language or the other to be irrelevant. The strength of F# is the primary coding style: mostly functional, mostly immutable, expression-based, strongly typed with global type inference. The way most C# is written is almost the polar opposite: mostly OOP/imperative, mostly mutable, statement-based, statically typed but with a less expressive type system (no sum types, exceptions and nulls over Result and Option) and very limited local type inference.

The F# style is enabled by a set of features - some of which would be really hard to add to C# (such as currying and global type inference) - but even if they were added, the millions(?) of C# developers would be unlikely adopt the functional style just because it was possible. A language is not just a list of features; each language has its own culture and "idiomatic" way of doing things.

Look at JavaScript though. A few years back it was all about loose typing, mutation, OOP (with prototype), etc and now TypeScript is king, React and Rx are promoting functional idioms (immutability, purity). So I think that can teach us that when a language can be typed and functional there could be a vibrant community that uses it that way while there’s another that doesn’t
Is F# still moving forward? I am tempted to try it but I don’t want to bet on another tool MS may abandon soon like they did with the .NET frameworks.
Here's the blog post JUST for the changes in the newest release. It is surprisingly meaty for being something other than c#

https://devblogs.microsoft.com/dotnet/whats-new-in-fsharp-6/

I love how detailed those blog posts are. Always a (very long) delight to read :)
And F# is the single piece of the inner .NET which is truly community driven. And they have a vibrant community.
Yes. F# 6 was just released with .NET 6 and Visual Studio 2022. It's an awesome language with a vibrant community. Plus, it's fully open source and cross-platform, so if MS were to abandon it, I think it could carry on anyway.
I think the real question to ask is how it would fare without Don :)