Myths about F#: C# will become F# anyway, so we don’t need F#! Nope, not happening.

C# indeed gets more and more features known to F#, like pattern matching, switch expressions, records, a way to deal with nulls, and someday maybe even discriminate unions and deep equality on collections. Maybe even type inference could become as powerful as in F#.

However, C# can’t eliminate the features it already has, like mutability by default and statements. Immutability by default and expressions-only are strengths of F# and make building error-free apps easier.

Real pipes and function currying would also be breaking changes to the language that would be hard to add to the existing feature set. Features frequently used in an F# codebase.

And finally: strict ordering. While many see it as a disadvantage because it sometimes stands in your way, it is a great help in maintaining a codebase by making dependency cycles impossible and code easier to read.

See Tweet and Toot for feedback.

Note: the F# myths are a collection of arguments I typically hear when talking about F#. Some are true, and most are wrong.

About the author

Urs Enzler

Add comment

By Urs Enzler

Recent Posts