F# vs C#
The cluster centers on comparisons between F# and C# from .NET developers, debating F#'s functional programming advantages, ecosystem limitations, tooling, and Microsoft's support versus C#'s popularity and maturity.
Activity Over Time
Top Contributors
Keywords
Sample Comments
I am python developer, I am looking forward to program in F#. F# just seems right after developing with python unlike languages like c#, java.
C# syntax is gradually approaching F#. I'd say just use F# and skip the bloat.
F# works, it gets updates and there is good (not perfect) tooling. Everything you can do with C# can be done with F# too. Although most APIs don’t feel very natural in F#. F# has only a small ecosystem, so you may not find the right library for every task, and need to use something object oriented from the C# world instead.
F# is less popular, but it’s a first class .Net language with full MS support and integration onto .Net (VM and ecosystem). C# has been tracking F# and aiming for language parity for years (ie all your modern C# devs should be learning the same language facilities). F# is multi-paradigm so C# devs can write idiomatic C# with minor forced changes. And as a .Net language you can always decompile it into C# and keep going from there.That’s a radically different proposition than, say, raw OCaml
I've been using C# for close to a decade at this point (wow, wtf) and I'm fairly familiar with functional programming techniques - I use a lot of closures, immutability, and map/reduce patterns in my code - but F# is still really awkward for me to write and use compared to C#. Even if they can express the same things, and F# is more powerful, it's a far more inconvenient language to use for someone that hasn't been living and breathing ML for years.Furthermore, in gen
F# touches on most of these points doesn't it?
What are your reasons for using C# over F#?
If you're doing FP in C#, why not use F#? It's not Haskell, but it's a step closer.
I am a C# developer and I find F# very interesting. I love the functional paradigms in C# and I want to be able to use more of a functional style.I like how well written F# code is less verbose while being very readable.I want to learn another language. I was thinking about Go, Rust and Kotlin. I excluded Kotlin because it seems it doesn't bring me much value over C# and I excluded Go for the same reason.I dabbled a bit in Rust, but so far I don't like it's verbosity, the
If you want to get things done in .NET Core, use C#. If you want to learn functional programming then sure, use F# and the full .NET Framework...but good luck finding help when you need it because compared to the number of people Elixir, Scala, etc - hardly anyone is using F#.I started learning F#, but ultimately I decided I'd rather learn either Scala or Elixir because they are more "mainstream" functional programming options. If anyone doubts this, compare the number of F#