Library ecosystem seems better on F#, but I must admit I'm somewhat wary of the behemoth that is .NET .
What else should I consider?
Library ecosystem seems better on F#, but I must admit I'm somewhat wary of the behemoth that is .NET .
What else should I consider?
https://devblogs.microsoft.com/dotnet/announcing-f-5-preview...
I had originally been learning ocaml but switched to f# because it has much better tooling and more uses (e.g. better web server support since I use .net libs)
From just preliminary research, F# seems both loved by its devs, but also found to be a bit of an unloved child on a sidetrack - that was probably another reason I hesitated in getting started. Do you think that is justified?
When I started I was pleasantly surprised how easy it was to download .net core on a mac and not do anything else to use F#.
Its less popular than C# so its there's not as much documentation from 3rd party sources, youtube videos, etc, but you can use any C# modules in F# so you'll get used to reading C# docs.
I would highly recommend this overview of the .Net ecosystem: https://www.youtube.com/watch?v=bEfBfBQq7EE
I really like how it showed a preview of "modern C#" at 12:20 which is being influenced by F#.
After that, this talk opened my eyes to the power of f# philosophy and type system: https://www.youtube.com/watch?v=2JB1_e5wZmU
I am curious as to whether the F# ecosystem is similarly fragmented by Windows-only libraries.
Almost anything with a CPU has some OEM shipping JVM implementations for them, while Microsoft focus only on the major desktop and mobile OSes (one of them with its own coffee brand).
https://devblogs.microsoft.com/dotnet/introducing-net-multi-...
Plus it doesn't help that some teams are adopting React Native, even alongside .NET.
Too much chaos going on sorting out WinRT, while most of us aren't willing to say how high when Microsoft says jump.
I went from Ocaml to F# because I wanted better tooling and a much larger pool of available library (any .net library can be used from F#), I did not look back.
Both languages are close cousin but F#'s syntax feels a bit more streamlined at the cost of less powerful type inference (the type inference in Ocaml is a thing of beauty that I have not found elsewhere).
If you get a feel for F# I'm sure it will be an easy leap to OCaml if you decide to do it later.
Incidentally I've just been running through the Advent of Code in F# over the last few days - I do think the toolset for F# is very kind for a new learner.
I have spent a couple of years doing .NET for life sciences, as many labs are mostly focused on Windows due to their laboratory robots and data readers.
So many researchers end up using a mix of Excel, VBA and MFC (old tech) and Forms/WPF (new tech) based tooling.
If that is your data science domain, I would definitely advise F#.
Would you then dis-recommend F#, or merely not recommend it for Windows compatibility?
Also you can use .NET Core.
Note that VS for Mac is no longer Xamarin Studio rebranded, nowadays it shares several common code with VS, which is one of the reasons why the plugins have moved away from COM to being .NET based.