Dmitry Soshnikov (2013-05-16T21:11:40.000Z)
Hey guys,

Sorry for the random question (probably it was already discussed).

What is a current state having mixins/traits syntax along with a class
definition?

Like:

class Foo extends Bar {
  use EventEmitter, CommonMethodsMixin;
  ...
}

where mixins provided in "use" declarations are simple objects which are
copied to the Foo.prototype. (with potential optimization of delegating to
mixins).

We currently use an extension in our pre-processing infrastructure, which
does exactly what described above (so it's not that hard to have it as a
sugar in local projects):

class Foo extend Bar mixin(EventEmitter) { ... }, although "use" seems fits
better and to have it on standard level is seems reasonable.

Thanks,
Dmitry
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20130516/3d432bec/attachment.html>
github at esdiscuss.org (2013-07-12T02:27:22.425Z)
Sorry for the random question (probably it was already discussed).

What is a current state having mixins/traits syntax along with a class
definition?

Like:

```js
class Foo extends Bar {
  use EventEmitter, CommonMethodsMixin;
  ...
}
```

where mixins provided in "use" declarations are simple objects which are
copied to the `Foo.prototype`. (with potential optimization of delegating to
mixins).

We currently use an extension in our pre-processing infrastructure, which
does exactly what described above (so it's not that hard to have it as a
sugar in local projects):

`class Foo extend Bar mixin(EventEmitter) { ... }`, although "use" seems fits
better and to have it on standard level is seems reasonable.