Le 29 juin 2014 à 04:46, Kevin Smith <[email protected]> a écrit :

> Thanks Claude for working this up.
> 
> 
> InitializeThisBindings(nonconstructedObj, obj) abstract operation
> ----------------------------------------------------------------------
> 
> This operation performs the actual initialisation of the this-bindings that 
> were previously deferred:
> 
>    1. Assert `nonconstructedThisObj` is a Non-Constructed Object.
>    2. Assert `obj` is an ordinary object.
>    3. Replace all references to `nonconstructedThisObj` with references to 
> `obj`.
>      (In particular, this step will effectively initialise the this-binding 
> of every function environment record that used to reference 
> `nonconstructedObj`.)
> 
> I was vaguely thinking along similar lines last week, but was stumped at this 
> point.  Is step #3 possible?  You'd basically have to (magically?) replace 
> the "this" binding for any subclass constructors on the call stack.  This is 
> probably a question for Allen.
> 

In fact, what I really need, is that the this-binding acts like a 
const-binding: It may be uninitialised at first, and will be initialised after 
the first call to a `super`-method (in most non-buggy code, it will be the 
super-constructor).

—Claude

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

Reply via email to