> I’ll write in a few days about what we chose instead

My bet is Python - it has some types but more importantly a massive ecosystem, and I think Dark’s target market probably has a little Python knowledge (which would come in handy if they’re looking for open-source contributions down the line).

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.

1: https://github.com/darklang/dark