On 09/29/2011 05:08 PM, Bob Nystrom wrote:


On Thu, Sep 29, 2011 at 4:22 PM, Erik Arvidsson <erik.arvids...@gmail.com 
<mailto:erik.arvids...@gmail.com>> wrote:

    However, it seems like all the issues we have seen are due to us
    trying to solve issues that already exist today with prototype based
    "classes". These involve (but are not limited to):

    1. Don't let uninitialized objects escape
    2. Ensure the shape of the instance
    3. Initialization of instance properties
    4. Allow const classes
    5. Allow const properties
    6. Play well with future type guards


I was tinkering with some syntax ideas last night and had the same revelation. 
It feels like we've over-constrained ourselves.

I get that feeling as well.

In particular, if you're willing to discard 2 and 6 (basically not worry about 
a declarative form for instance properties) I think it gets a lot easier.

Yes, it's easier, but you'd also lose any convenient way of doing 5.  2, 4, and 
5 are the most important new features, and there isn't enough value in classes 
to add them without those.  If you find it difficult to come up with a proposal 
that can accommodate them, it's a sign that you're about to design yourself 
into a corner.

Constraint 1 is the one above that I'd relax.  All simple ways I've seen to to 
do it are variants of zero-inheritance.

    Waldemar
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to