[[Extensible]]and Proxies (Was: Proxy.isProxy )

Allen Wirfs-Brock allen at wirfs-brock.com
Wed Jul 13 08:38:56 PDT 2011

Hate to start another cycle of this,  but if (trapping) proxies can't be set to [[Extensible]]: false, then they can't be used to fully emulate built-ins such as Array.  Why is there this restriction?


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

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20110713/0eccc986/attachment.html>

More information about the es-discuss mailing list