4 ms·
> I get that. The important bit is that there are a lot of other important concerns besides the type system--tooling, ecosystem, ease of finding/onboarding coll
by hardwaresofton 5y ago
> I get that. The important bit is that there are a lot of other important concerns besides the type system--tooling, ecosystem, ease of finding/onboarding collaborators, etc. Personally I think Rust is the only of these languages which ticks most of these boxes, and even then Rust makes you think about ownership all the time. I think there's space for a GC'ed Rust ("Rust-lite") or an OCaml with a familiar syntax and really great support (last I checked, ReasonML is still a confusing mess).
Yeah, I personally use Typescript when I want something that I can work with others but not slow down newcomers/other team members too much. Perfect world it's Haskell or Rust but in the real world usually Typescript.
> Maybe Go will get generics and sum types and it will be close enough?
I think this is what will happen -- basically Go is doing the mongo thing where you just launch with something that is mostly good (Go is way more than mostly good for what it sets out to be), and you just iterate till you get something that is way better, and you just have to out-market/last your competitors.
A bit of a detour but most people have never heard of RethinkDB which was like Mongo, but more correct (see Jepsen tests), could shard easily out of the box, came with an admin UI, and did live streaming of updates. By all accounts a better product, but Mongo just marketed their way to dominance and iterated/bought their way out of a bad product (see: WiredTiger).