Sep 27 meeting notes
waldemar at google.com
Thu Sep 29 18:38:02 PDT 2011
On 09/29/2011 05:08 PM, Bob Nystrom wrote:
> On Thu, Sep 29, 2011 at 4:22 PM, Erik Arvidsson <erik.arvidsson at gmail.com <mailto:erik.arvidsson at 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.
More information about the es-discuss