waldron.rick at gmail.com
Wed Aug 6 06:14:17 PDT 2014
On Wednesday, August 6, 2014, Brendan Eich <brendan at mozilla.org> wrote:
> Rick Waldron wrote:
>> On Tuesday, August 5, 2014, Domenic Denicola <domenic at domenicdenicola.com
>> <mailto:domenic at domenicdenicola.com>> wrote:
>> I sympathize; I have always found the fact that bare `super()`
>> works to be confusing.
>> When a bare super() call appears in a method (whether constructor or not)
>> it can only have _one_ _meaning_ and that's a call to a method of the same
>> name in the parent class. This isn't particularly innovative: John Resig's
>> clones, forks and spin-offs exist) "abstract class" techniques—provides
>> `this._super()` which does the same thing that ES6 super() does. This
>> pattern existed before and has been repeated throughout many libraries that
>> have stood out over the years: Prototype, Dojo, Ext.js and certainly
>> others. CoffeeScript implements super() this way as well.
> CoffeeScript imitated Ruby here.
Yep, and probably the other quasi-super APIs I mentioned as well—that was
in my follow up message.
> Smalltalk had super rather than self sends, but you had to send with the
> full selector (think method name). Java has super() in constructors but
> requires super.method() in methods. I'm cool with super() in methods, I
> forgot we disallowed naked `super`, and my gut says we would support it as
> equivalent to `this`.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the es-discuss