TypeScript won

My biggest concern regarding TypeScript, which is also one of my bigger concerns regarding ES2015, is the class keyword. I’m worried that TypeScript classes, together with interfaces (which I like on their own) will encourage Java-like programming. I dread large-scale TypeScript apps containing deep class hierarchies that we often encounter in large Java (and C#, and C++) apps. The worse thing that can happen to JavaScript is to become a poor Java clone.

Obviously TypeScript doesn’t force you to go down this route, but it does introduce a slippery slope.