[[Invoke]] and implicit method calls

Tom Van Cutsem tomvc.be at gmail.com
Thu Sep 12 05:42:10 PDT 2013


2013/9/12 Allen Wirfs-Brock <allen at wirfs-brock.com>

> what Tom was referring to above: "statically separate the cases into two
> separate internal methods".
>
> I presume, in context, he means [[Invoke]] and [[ConditionalInvoke]] but
> it could also mean [[Invoke]] and [[InvokeFunction]]
>

Yes (I meant [[Invoke]] + [[ConditionalInvoke]]).

Jason and Allen's arguments convince me that we're better off refactoring
all [[Get]]+[[Call]] occurrences to use some form of conditional [[Invoke]].

Out of all the circulating alternatives, I prefer [[Invoke]] +
[[ConditionalInvoke]] as it allows virtual object proxies to avoid consing
a function
(also, [[ConditionalInvoke]], much more so than [[InvokeFunction]], neatly
captures the *intent* of what's going on in the spec)

As for the consistency costs, we already have them. This only ups the ante
for standardizing on a good library of subclassable Handler abstractions.

Cheers,
Tom
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20130912/4dc13917/attachment.html>


More information about the es-discuss mailing list