Proxy.isProxy (Was: using Private name objects for declarative property definition.)

Andreas Rossberg rossberg at google.com
Wed Jul 13 02:05:55 PDT 2011


I fully agree that isProxy sounds like a bad idea. It just breaks the
proxy abstraction.

/Andreas

On 13 July 2011 10:26, Andreas Gal <gal at mozilla.com> wrote:
>
> I really don't think IsProxy is a good idea. It can lead to subtle bugs
> depending on whether an object is a DOM node, or a wrapper around a DOM node
> (or whether the embedding uses a proxy to implement DOM nodes or not). In
> Firefox we plan on making some DOM nodes proxies for example, but not
> others. I really don't think there is value in exposing this to programmers.
> Andreas
> On Jul 13, 2011, at 1:23 AM, Tom Van Cutsem wrote:
>
> Perhaps Proxy.isProxy was used merely as an example, but wasn't the
> consensus that Proxy.isProxy is not needed? Dave pointed out that it breaks
> transparent virtualization. Also, there is Object.isExtensible which always
> returns |true| for (trapping) proxies. That means we already have "half" of
> Proxy.isProxy without exposing proxies: if !Object.isExtensible(obj), obj is
> guaranteed not to be a proxy.
> Cheers,
> Tom
> 2011/7/9 Brendan Eich <brendan at mozilla.com>
>>
>> Also the Proxy.isTrapping, which in recent threads has been proposed to be
>> renamed to Proxy.isProxy or Object.isProxy.
>
> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>
>
> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>
>


More information about the es-discuss mailing list