F# started as a copy of OCaml onto .NET but without the higher typed and first class modules (which is honestly the big thing about OCaml, otherwise just use SML), right down to the syntax (you could take an ocaml program that didn’t use higher typed or first class modules and compile it with F#, still can to this day I hear), and then F# started extending its syntax with more features, mostly just things to fit the .NET ecosystem better. I still think OCaml as a language is better than F#, but F# is certainly more convenient because it has all of .NET behind it (well, unless you want to compile a native app, lol).
5 Likes