Take a look at haxe[0] for a compile-to-js ML inspired language. It's relatively mature these days and integrates with existing typescript definitions via dts2hx[1]
I talk about this more here: https://news.ycombinator.com/item?id=26084187
I talk about this more here: https://news.ycombinator.com/item?id=26084187