3 ms·
Their long game is to slowly convert C# into F# without anyone realizing it. They're roughly half way through already.
by Someone1234 7y ago
Their long game is to slowly convert C# into F# without anyone realizing it. They're roughly half way through already.
- akra 7y agoFrom the features they are porting into the language I think this is the case; albeit C# will always be the more verbose language and the features will feel somewhat clunky at times IMO. Pattern matching, async yield return, async/await, etc all were in F# in some form beforehand with features like records and DU's probably being investigated as well. When I read a new C# language version announcement it does feel like I'm reading a subset of the F# feature list.
- emodendroket 7y agoI used Scala for a bit and then came back to C# and felt like they were porting over all the Scala features, but I think the F# explanation may make more sense.
- carlmr 7y agoAnd also to mention they're lagging behind F# by almost a decade. I can find articles on discriminated unions from 2012.
- oaiey 7y agoWell C# 7.2 and 7.3 was moving it more to Rust. So that F# statement is a bit limited. They steal best ideas from everywhere and integrate it into the multi-paradigm language C# actually is. In 2020 Pattern Matching is just a elementary feature everyone wants to have in all general purpose language. Like async/await. Or LINQ. That is just 101 for languages from now on.
- pjmlp 7y agoMore into D, Modula-3, Active Oberon actually.