On Thu, Jun 16, 2011 at 4:30 PM, Brendan Eich <[email protected]> wrote:
> On Jun 16, 2011, at 4:27 PM, Mark S. Miller wrote: > > On Thu, Jun 16, 2011 at 4:23 PM, Brendan Eich <[email protected]> wrote: > >> On Jun 16, 2011, at 4:14 PM, Mark S. Miller wrote: >> >> On Thu, Jun 16, 2011 at 4:05 PM, Brendan Eich <[email protected]>wrote: >> >>> There is a second reason, mentioned recently: we are implementing the DOM >>> on top of proxies, and the current WebIDL spec has non-configurable >>> properties induced in its normative ES bindings from the IDL syntax. We want >>> to match the spec. >>> >> >> Perhaps the WebIDL spec should be revised in exactly the same we we're >> currently talking about revised arrays? >> >> >> It's in Last Call, so time is short. Also, implementations do matter, and >> non-configurable is valued by implementations that want to optimize by >> assuming the slot in the object won't go away. If we make Array length, >> NodeList length, etc. be configurable, we implementors will need some >> *other* hidden attribute. >> > > There is already internal special case handling for every property that > needs to be magical. So having non-delete-ability be part of this special > case handling would seem natural. From your > > > Bonus, I think this will simplify things in our implementation of Array > length vs. the ES5 Object.* APIs. > > it might even be net more natural than the current situation. > > > My "Bonus" remark was *only* about Array length. For a great number of > non-configurable properties (e.g. global vars in ES5 implementations, not > created by eval), we JIT authors need a general attribute to consult. We > aren't hardcoding, as we do for Array length (all the fast VMs optimize > a.length expressions in the dense array, or any array, case). > Can we gather a list of all magical host properties that WebIDL says are currently non-configurable but that proxies can't emulate unless they are made configurable? -- Cheers, --MarkM
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

