And another silent semantic change? I wouldn't be so quick to do that. And that's not the direction we were going for __proto__ in the last f2f.
I *wish* __proto__ were just treated as another normal property. And I'd like for us to work towards a future where that's the case. I'm just skeptical we can do it by cramming it into strict mode. Dave On Nov 8, 2011, at 3:50 PM, Mark S. Miller wrote: > > > On Tue, Nov 8, 2011 at 3:46 PM, Mark S. Miller <[email protected]> wrote: > > > On Tue, Nov 8, 2011 at 3:33 PM, David Herman <[email protected]> wrote: >> Perhaps __proto__ should not be writeable in "use strict"? >> >> That's a great idea! This never occurred to me, and I have not heard anyone >> suggest this. Thanks! > > Doesn't work. > > obj[(function(__){return __ + "proto" + __})("__")] > > If the "[" above is a strict "[", it should not be able to address > "__proto__", regardless of whether the "__proto__" is computed or not. Or if > we intend only to suppress writing, then > > obj[(function(__){return __ + "proto" + __})("__")] = {} > > should still fail if the "[" above is in strict code. > > Sorry, it should not fail. It should simply create a normal property that > happens to be named "__proto__". Likewise, your first example should simply > address such a normal property. Then JSON would again be an almost-subset of > ES5/strict, modulo \u2028 and \u2029. > > > > > > Dave > > > > > -- > Cheers, > --MarkM > > > > -- > Cheers, > --MarkM
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

