Arrow binding

Alex Russell alex at
Mon Apr 23 08:40:44 PDT 2012

The semantic of Function.prototype.bind() precludes it. If we could
relax that to be effectively soft-bound, I'm *completely* on board,
but I expect it will cause some problems.

We could, of course, try this out in Chrome and see how it goes.

On Mon, Apr 23, 2012 at 4:32 PM, John J Barton
<johnjbarton at> wrote:
> On Mon, Apr 23, 2012 at 3:53 AM, Alex Russell <alex at> wrote:
>> The new forms we're adding (methods and arrows) have the potential to
>> change this radically, causing a large percentage of functions encountered
>> by programmers to have binding. If that binding is hard-binding, .call() and
>> .apply() break in the minds of users. Perhaps that's fine by you, but in
>> addition to being a contractual failure, it removes a form of genericness
>> which is unique in the language.
> Sorry if I missed reading about this but: why can't we re-bind 'this" in
> bound functions when using call(), apply() ? I'm sure it will make more work
> for JIT optimizers but they are very good and love this kind of problem.
> jjb

More information about the es-discuss mailing list