complexity tax

Brendan Eich wrote: > And over-minimizing a language imposes a complexity tax on programmers > using it. This happened long ago with JS1 and it was compounded by > foot-dragging monopolist misconduct since 1999. > > To decide whether to evolve JS or shrink it, you need only look at two > things: 1) problems JS hackers run into every day, which are not solved > by more idiomatic functional programming hacks that add cycle and space > bloat to their libraries and applications; 2) competition from other > languages in runtimes vying to displace the browser. I think this is the specific point of disagreement. Complexity in a language does not necessarily reduce the complexity of programs. I think the opposite may be truer. The difficulties we have had in the development community since 1999 were not due to over-minimization. They were due to features that did not work as expected or reliably over the various brands and versions. I think that with minimal changes we can significantly improve this language. Most of the changes I would make would make it simpler, not more complex. And of course, our overwhelmingly most important problem, insecurity, is not addressed by this proposal. The proposal is trying to solve a problem from a 2000 viewpoint. We have moved on since then. We have new problems now, and the proposal does not match them. I believe that it will be easier to improve the performance of the language by simplifying it. That performance improvement will be critical as we move toward mobile. I can't make sense of your point about competition. The web's competitors all provide access to multiple languages, including JavaScript. In the unlikely case that the proposed language is successful, I would expect them to support it too. It would seem that the web would be more competitive if it also offered multiple languages. I don't believe that a single, all-inclusive monster language will be competitive.