Python is a bad choice for writing reliable software. If you need the reliability of type checking, just use an early-bound language, not a late-bound language with checking grafted on. And very few Python libraries have type annotations.
And while 3 fixed some footguns, e.g. 'a' < 5 now throws a TypeError and there's a clear distinction between str and bytes, others remain, e.g. if you reuse a generator it will silently be empty.
Looking at the repo[1] the languages tab shows:
OCaml 78.6%
F# 12.2%
The F# hits are in a directory "fsharp-backend", and all in the last 3 weeks.
Haha, also checked the repo and thought the same. We're using F# in prod (about 200K LOC) and it has been great so far.
We also use F# for two react front ends with fable (F# to JS compiler). More new alternatives for using F# in the browser (FsBolero/Blazer) via web-assembly or running it server side like Phoenix live view also exist.
One issue we had with Fabel is how .NET DateTimeOffsets are handled on the Client side.
Honestly surprised I was able to keep this any kind of mystery, since the repo is open and it's plain as day what I've been working on. But congrats on being the only person that actually looked!
And while 3 fixed some footguns, e.g. 'a' < 5 now throws a TypeError and there's a clear distinction between str and bytes, others remain, e.g. if you reuse a generator it will silently be empty.
Looking at the repo[1] the languages tab shows:
OCaml 78.6% F# 12.2%
The F# hits are in a directory "fsharp-backend", and all in the last 3 weeks.
1: https://github.com/darklang/dark