I wanna see what F# is about, especially now that I am better at FP&Lip. But the Microsoft thing really puts me off. I’m on Linux, I can’t use CLR, I don’t wanna make a WPF application or whatever — so why would I use F#?
You’ve made some incorrect statements and assumptions. The old .net framework was/is Windows only but the new(er) dotnet Core is cross platform, you can use the clr on Linux no prob.
It’s worth noting that Microsoft have dropped the
Core
thing and now it’s only .NET + number (8 is the latest for now)
To my knowledge, it’s just an FP language which can make use of Microsoft’s .NET ecosystem, like Scala and Clojure can make use of the JVM ecosystem…
It’s Microsoft’s OCaml. Its design is focused on the functional paradigm but also facilitates a imperative paradigm as a secondary focus in the design.
If you are looking for things you can make with F#, here are some popular use cases:
- console apps
- backend (Saturn, Giraffe)
- frontend websites (Fable - JavaScript transpiler)
- fullstack (SAFE Stack)
This link appears to cover those:
https://learn.microsoft.com/en-us/dotnet/fsharp/scenarios/web-development
Note: for OP
.net core and .net 5+ runtimes are cross platform and open source. You can use them anywhere.
You’re thinking of .net framework which is windows only and considered legacy.