OK. It surprised me, because `get` is so much about inheritance chains. I’ve not seen a rationale for the proxy invariants anywhere (including your technical report on proxies). Can I read up on it somewhere?
In general, the proxy parts of the spec are very readable. Especially the summary of the invariants in each section on internal proxy properties is helpful. Thanks! Axel > On 02 Nov 2014, at 20:42, Tom Van Cutsem <tomvc...@gmail.com> wrote: > > No, the proxy invariant checking mechanism never looks at inherited > properties. Invariants related to frozenness (non-configurable, > non-extensible) relate only to own properties. For example, even if an object > is frozen, it may still inherit from a non-frozen object whose interface may > change. And then there's `setPrototypeOf`, which may cause inherited > properties to change altogether. > > Cheers, > Tom > > 2014-11-02 19:25 GMT+01:00 Axel Rauschmayer <a...@rauschma.de > <mailto:a...@rauschma.de>>: > https://people.mozilla.org/~jorendorff/es6-draft.html#sec-proxy-object-internal-methods-and-internal-slots-get-p-receiver > > <https://people.mozilla.org/~jorendorff/es6-draft.html#sec-proxy-object-internal-methods-and-internal-slots-get-p-receiver> > > To enforce the invariants, this operation uses `targetDesc`. That property > descriptor is retrieved via target.[[GetOwnProperty]], which ignores > inherited properties. Shouldn’t inherited properties be taken into > consideration, too? -- Dr. Axel Rauschmayer a...@rauschma.de rauschma.de
_______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss