> IIUC, with Object.create, you don't even get the conflict checking. And then 
> you've really lost the key benefit of traits.
> 
> See 
> <http://code.google.com/p/es-lab/source/browse/trunk/src/traits/traits.js#150>.
>  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.

Dave

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

Reply via email to