My ECMAScript 7 wishlist
Tab Atkins Jr.
jackalmage at gmail.com
Fri Sep 26 11:01:28 PDT 2014
On Thu, Sep 25, 2014 at 5:38 PM, Brendan Eich <brendan at mozilla.org> wrote:
> On Sep 25, 2014, at 7:56 PM, Boris Zbarsky <bzbarsky at mit.edu> wrote:
>> SpiderMonkey used to support __noSuchMethod__, I believe.
> I implemented __noSuchMethod__ long ago, for the TIBET folks (Smalltalk style JS framework; they wanted a doesNotUnderstand analogue).
> Please note well the difference between __noSuchMethod__ and anything like __noSuchProperty__. Even ignoring JITs, back in the interpreter only days, I could justify nSM because it was called on a slow path, when the only outcome without it was a guaranteed "obj.foo is not callable" or worse, "obj.foo is not defined" error.
> IOW nSM only kicked in when evaluating
> Not just
> Any nSP of the kind we seem to be discussing would need to fail fast, on evaluation of the dot expression. That is a fast path.
I, personally, have only ever used Python and PHP's nSP functionality
to implement methods. Most of the fancy uses I see for it in, say,
Ruby (like the cool dynamic query methods on ORMs), are also methods.
There are certainly uses for this kind of functionality for non-method
properties, but I suspect just going with noSuchMethod would satisfy
most use-cases. I'd certainly be happier with that. ^_^
More information about the es-discuss