<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><div class="im"><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="gmail_quote"><div>Anyway, unless we are going to really make classes distinct from functions, I'm not sure how we could enforce super in the way you describe without affecting it in other forms. Can you only extend classes created using "class" syntax?</div>

</div></blockquote><div><br></div></div><div>No - any function (constructor) can be to the right of "extends".  Again, not necessarily arguing the case either way, but if in some future there were field initializers then they would presumably be at the top of the desugared constructor:</div>

<div><br></div><div>function _ctor(a, b, c) {</div><div>    // super constructor call?</div><div>    // execute field initializers</div><div>    // "new" / "constructor" body</div><div>}</div></div></blockquote>
<div><br></div><div>Yeah, I guess I just meant that we still have to handle old ways of wiring up classes. Lets say we made a class with field initializers and then extended it with a function, but didn't use the class syntax, wouldn't that break the integrity you're trying to reinforce? I just think its a ball of wax that we can deal with later, and leave this as more sugar over existing semantics.</div>
<div><br></div><div>- Russ</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><span class="HOEnZb"><font color="#888888"><div><br>

</div><div>kevin</div></font></span></div>
</blockquote></div><br>