Le 24/12/2012 15:50, Brandon Benvie a écrit :
That doesn't seem to be a problem. Host objects may be losing most/all of their magic but it's certainly reasonable that they have privileged access to capabilities. I think it makes sense to frame deleting __proto__ as simply removing access to a capability from the user, but the capability still theoretically existing if you somehow have privileged access to use it.
Some may rely on [[Prototype]] not changing to prove JS programs.
If you delete __proto__ and use this knowledge to assume [[Prototype]] while it changes behind your back, it's not really helpful. While I'm saying this, I realize that the set of operations which will change [[Prototype]] is (will be) well-defined and the exact [[Prototype]] it changes to is not arbitrary. So maybe things are fine.

I think a bigger question is how DOM nodes will handle non-extensibility. If I Object.preventExtensions a node and then this scenario happens, which happens to that node? Or do nodes just start throwing whenever you try to make them non-extensible?
The throwing is what I suggested at www-dom.

David
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to