On 18 March 2013 17:48, Brendan Eich <bren...@mozilla.com> wrote: > Andreas Rossberg wrote: >> >> On 18 March 2013 17:32, Mark S. Miller<erig...@google.com> wrote: >>> >>> And why does ES5/strict impose these restrictions, when they are not >>> necessary for the formal criterion? >>> >>> Because ES5 strict mode, being an opt-in, gave us a rare opportunity to >>> clean things up in preparation for yet better scoping in ES6. I'm pleased >>> to >>> report that it mostly turned out that way. Because of #1 and #3, ES5 >>> strict >>> code will be easier to refactor into ES6 modules, where the global object >>> is >>> finally not on their scope chain. At the time we did this, we didn't >>> anticipate this specific aspect of ES6, but took the opportunity to clear >>> the ground. >> >> >> Maybe I misunderstand what you mean, but unfortunately, the global >> object will remain at the top of the scope chain in ES6, even with >> modules (though complemented with a lexical environment for new >> binding forms). We shied away from fixing that mistake. > > Don't break the web. > > Versioning is an anti-pattern. > > I don't think "shied away" is accurate. We couldn't fix that mistake.
I think we could have fixed it for modules. Whether that would have been worth it I don't know. /Andreas _______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss