Partial conclusions on WindowProxy and ES5 invariants
Le 19/12/2012 17:52, David Bruant a écrit :
(...) 3) WindowProxy objects reflect [Unforgeable] properties as own configurable getters (properties like 'location' which are also [PutForward] also have a setter)
A different solution is suggested [1] and has a lot of support. With this solution, the couple of WindowProxy [Unforgeable] getters/setters would be deeply frozen (the function is frozen and all objects reachable from this function through properties, [[Prototype]], etc. are frozen too). Because it involves Function.prototype and Object.prototype and these can't be frozen, getter/setter would have their own deeply frozen version of Function.prototype and Object.prototype.
3.1) It does NOT change the semantics of [Unforgeable] for other objects (maybe 2 different annotations should be defined to differenciate the 2 cases)
This still applies. Regardless if configurable:true or deeply frozen getters/setters is chosen, there will be a need for 2 annotations to distinguish WindowProxy [Unforgeable] and other [Unforgeable].
David
In this message, I try to capture the conclusions of the couple of recent threads that happened regarding WindowProxy and ES5 invariants starting [1][2]. I understand the following conclusions:
If these partial conclusions are applied, WindowProxy respect ES5 invariants without making too much trouble or adding too much weirdness.
configurable:true may be felt as not expressive enough, so I encourage people on the WebIDL side to participate to the discussion about the eventuality to reflect different property descriptor attributes for WebIDL objects in cases where it'd be necessary. Or the eventuality to reflect this information in other ways if relevant.
Is there a disagreement on these partial conclusions?
Thanks to everyone who participated to these discussions,
David
[1] lists.w3.org/Archives/Public/public-script-coord/2012OctDec/0322.html [2] esdiscuss/2012-December/027080 [3] esdiscuss/2012-December/027223 [4] esdiscuss/2012-December/027145