Eh, there's still TypeScript and Flow. Myself, I'm a fan of the latter.
Typescript and Flow are two such examples.
Instead they kept Javascript with a type system on the top (typescript, purescript, flow, ...).
The reason for using an extension/superset is usually not because JS is terrific but because gradual/partial migration and interop are more important than a better language.