On Nov 9, 2011, at 3:48 PM, Axel Rauschmayer wrote:

>>> Or are there other plans to get it solved? I would still love to see that 
>>> happen, it’s a remarkably subtle source of errors. Could functions adopt 
>>> the block-lambda semantics of picking up the `this` of the surrounding 
>>> scope when not invoked as methods? It seems like that could work in strict 
>>> mode where no one expects `this` to have a value.
>> 
>> No, if you call such functions via object.method() references then this 
>> binds to object. You can't break such compatibility only at runtime, and 
>> only some of the time.
> 
> Got it. I’m assuming that’s a performance issue?

You could say that. If we inherit by default but it's a "soft binding", then 
the inner function has to carry that reference with it, but in a way that can 
be overridden.

We talked about lexical this for functions long ago (Jan. 2008? at Google 
anyway) and IIRC Mark found a subtler flaw.

/be

_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to