The 2 big things missing on typescript: 1) Operator overloading 2) Runtime type checking of JSON payloads (on dev env at least) Can't believe in 2019 every library has to create its own way to add 2 elements of the same class together e.g dataframe1.addTo(dataframe2) vs dataframe1 + dataframe2 And the most common error that it should help catch during development is that you get a JSON and you cast it but it means no…
If you want to write clever DSLs and/or name methods in ways that save keystrokes like in scala, NO, please.
2) There are libraries such as runtypes and io-ts that integrate well with the static type system