Re: new

Tue, 11 Oct 2011 13:47:06 -0700

Yes the prototypes are still there. But that means im just using es3
constructs. Es:harmony class literals only offer declarative sugar.

I'm not proposing we change any of the existing Class.prototype.* code. I
just propose that rather then throwing an error on new <Object> we make it
work.

This basically means we have three constructs for doing "classes". we can
even have declarative desugar to prototypes as classes, but thats optional.

We basically give people more choice. I'd say it's worth implementing merely
for having classes desugar to something with a more sensible 1<->1 mapping.

On Oct 11, 2011 9:22 PM, "Axel Rauschmayer" <[email protected]> wrote:

>>> class literals look the same but literal declaration are a right pain
for any kind of meta progr...
It will be more work, but the prototypes are still there and can be combined
as you describe above. I don’t think you need eval().

> Not to mention that es:h classes desugar to functions as classes rather
then prototypes as class...
The under-the-hood manipulations will be a bit more complicated, but the end
result will always have the clear separation of responsibilities between
constructor and prototype.

> I'd just think implementing prototypes as classes has very little to loose
as long as we dont go...

I guess that is the rub, reworking the standard types and all the code that
uses Class.prototype.* instead of Class.*. It would have to be done to make
things clean again and it would be too much work.

--  Dr. Axel Rauschmayer [email protected] twitter.com/rauschma home:
rauschma.de blog: 2ality.co...
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to