On 9 January 2012 16:54, Brendan Eich <bren...@mozilla.com> wrote: > The question is how bad these will be for anyone writing JS naively, based on > current and emerging (ES6) docs, without explicit opt-in. > > The answer entails at least: > > 1. ES5-strict semantic changes, e.g. arguments aliasing, without early errors. > > 2. Completion reform. > > 3. New early errors. > > I think 3 is a good thing and a non-problem. Some of us hope 2 is a matter of > indifference to real-world code, but we don't know for sure. That leaves 1.
Yes, but (1) is not a trivial set -- e.g. receiver coercions, eval semantics, delete type errors, arguments aliasing, poisoning of caller/arguments, etc. > No other semantic changes, right? The key idea of the state machine is not > its exact spec (still being discussed) but that "one JS" should mean sane > operation or early error, based on smooth upgrade to use non-conflicting new > features (or conflicts, e.g. 'with' vs. 'module'). > > Why work harder on implicit opt-in? Yes, savvy users will put a pragma on > line 1. Not all JS users are savvy and requiring them to become so asks too > much. But it's especially the non-savvy ones that would be particularly well-advised to put in that pragma, so that they avoid nasty surprises beyond their grasp! /Andreas _______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss