<br><br><div class="gmail_quote">On Wed, Mar 21, 2012 at 2:25 PM, Allen Wirfs-Brock <span dir="ltr"><<a href="mailto:allen@wirfs-brock.com">allen@wirfs-brock.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word"><br><div><div>On Mar 21, 2012, at 6:25 AM, Russell Leggett wrote:</div><blockquote type="cite"><div class="gmail_quote"><div><font color="#000000"><br></font></div></div></blockquote>...<div class="im">
<br><blockquote type="cite"><div class="gmail_quote"><div>Yeah - that is the way I was leaning, partly because I like it, and partly because that was the behavior in <| for functions in the class pattern. I think it could help make it easier for people to fill the gaps in the minimal syntax. For example, many class libs have some mixin functionality. If mixin were added to a custom base class, then you could do:</div>

<div><br></div><div><div>    class Foo extends MyBase {</div><div>        ...</div><div>    }.mixin(enumerable);</div></div><div><br></div></div></blockquote><div><br></div></div><div>There are likely issue with the above syntax.  However, I can imagine someway saying:</div>
<div><br></div><div>class Foo extends mixin(MyBase, enumerable) {</div><div>}</div><div><br></div><div>where mixin is defined as:</div><div><br></div><div>function mixin(directSuper, ...mixins) {</div><div>    let effectiveSuper = class extends directSuper{ constructor(...args) {return super.constructor(...args)}};</div>
<div>    for (let m of mixins) Object.extend(effectiveSuper.proto,mixins);  //probably need some conflict resolution logic</div><div>    return effectiveSuper</div><div>}</div></div></div></blockquote><div><br></div><div>
hmmm... yeah, I like this a lot, actually.</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div><span class="HOEnZb"><font color="#888888"><div>
<br></div><div>Allen</div></font></span></div></div></blockquote></div><br>