I actually have a solution in mind for this. Under the current proposal, a method containing super is "statically bound" to a specific object that provides the [[Prototype]] base for the "super" property lookup. This is normally done by defining the method in the context of an object literal or class declaration. If you want to define a method containing outside such a context you still need to provide the necessary binding.
What I have in mind is adding a reflection function for doing that: let f= function () {return super.f()}; f(); //TypeError -- super unbound let sup = {foo() {return "super hello"}; let sub = sup <| {}; Object.defineMethod(sub,"foo",f}; //adds f as property named "foo" of sub. binds super for f f(); // super hello _______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss