So as my last post said, if there's no observable difference in the field in switching from [[Put]] to [[SetInheritance]], then you and Mark are right, and we can do that in ES6 without fear of breaking any code.

This change *is* observable in ES6, though. That's why I summoned Mark: to make sure there's no SES issue with setting _ab initio_ the [[Prototype]] (or now I guess it's called [[Inheritance]]) of a fresh object created via an object literal.

Allen Wirfs-Brock wrote:
Triangle died for several reasons, and I'm surprised to hear it here. Grinding 
an axe?

Not at all!  You frequently have said that standardizing __proto__ takes the 
wind out of other features that support various use cases of 
defining/manipulating an object's [[Prototype]].  One of those features is 
using an object literal as a way to declaratively describe an object that 
inherits from something other than Object.prototype (including null).

The argument is that anyone code that deletes Object.prototype.__proto__ should not affect object literals wiring up from-birth inheritance is fair. I shouldn't have mentioned axes, sorry.

The only issue is the ES6 => SES one. If Mark's happy, then we are done as far as this [[Put]] vs. [[SetInheritance]] argument goes.

The quoted vs. unquoted difference is horrifying to me, I threw up in my mouth a little. More on that elsewhere.

/be
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to