Classes as Sugar is now ready for discussion

David Herman dherman at
Thu Sep 9 22:30:32 PDT 2010

> IIUC, with Object.create, you don't even get the conflict checking. And then you've really lost the key benefit of traits.
> See <>. Even with Object.create, you still get conflict detection, but with failure postponed from creation to usage. This is a more traditionally JavaScripty way to report failure anyway.

Ah, I see. I missed that part.

Is the on-demand nature of conflict detection (for traits built with Object.create) somehow unavoidable, or was that simply a design choice?

>     function Point(x, y) {
>       this.x = x;
>       this.y = y;
>     }
>     Point.prototype = Object.create(
>       SuperPoint.prototype,
>       Trait.compose(.....));
> Is that the kind of usage you had in mind?

Yes, exactly. Sorry for my oversight.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the es-discuss mailing list