<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><div class="h5"><div>I'm not assuming you're a newbie. Heck, I consider myself a newbie. Perhaps I'm just jaded. Two weeks ago, I had hope that max-min would get us something. Now I'm feeling less hopeful.</div>
</div></div></div></blockquote><div><br></div><div>No way - we're gonna get classes in.  : )</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>Arbitrary prototype properties is surely to draw fire. It can be a foot-gun and might conflict with instance properties in the future.</div></div></blockquote><div><br></div><div>Foot gun: yes.  I've shot myself in the foot with it.  But I think it can be addressed in a way that's footgun-proof.  We're going to need arbitrary prototype properties at some point.  I can elaborate on why I think so later.  As for conflicting with instance initializers, our footgun-proof syntax wouldn't need to conflict with that.</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="gmail_quote"><div>As for your fourth, most controversial point, separating call and constructor would diverge from the existing pattern. Number() and new Number() always call the same function.</div>
</div></blockquote><div><br></div><div>They don't always do the same thing though - check out Date (15.9.2 & 15.9.3).</div><div><br></div><div>Otherwise, we have to do something painful like:</div><div><br></div><div>
    if (this instanceof MyClass)</div><div>        // construct it</div><div>    else</div><div>        return new MyClass(...args);</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 class="gmail_quote"><div>I'm not trying to shut you down. I just really want classes to happen, even if in the most minimal form. I apologize if I seem dismissive, I just don't see it as being the most productive way of getting there.</div>
</div></blockquote><div><br></div><div>No problem!  The "half-baked" thing was a little over the top, I admit.  : )</div><div><br></div><div>kevin</div></div>