The problem is that ECMA refuses to fix the basic, fundamental problems with the language. The loose typing and freewheeling coercions, and their associated wildly-inconsistent semantics. The lack of an integer type. The silent syntactical failures. If it’s worried about breaking the web, it should at least do something similar to “use strict.” Breaking language versioning has been done for Python (3 vs 2), PHP 7, and Perl 6. Why not JavaScript? Just fix all the problems and make it a solid software engineering tool. Jettison all the baggage and don’t try to be backwards compatible to the exclusion of language safety.

The JS ecosystem would have to gradually adapt to the new JavaScript language. During the transition, JS library authors would have to make the libraries polyglot. Over time, we would wean the JS community off of the “old” JavaScript. This is absolutely doable. It only requires the will to do it. The problem is that ECMA is too chicken-shit to take the risk.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store