Jeremy Martin (2013-07-10T18:45:12.000Z)
github at esdiscuss.org (2013-07-12T02:27:45.732Z)
> (like, say, the way Jeremy Martin proposed) FTR, I haven't proposed anything just yet :) Although if I did, I think I would be more fond of something like: ```js Object.mixin({ foo: 'bar' }, EventEmitter); ``` ... that is, I can see the value of events as an object-level API that doesn't imply actual inheritance from something else. The use of `mixin` is probably a distraction here, but the main point is that it's opt-in. Events inherently have semantics around them, and they're certainly not universal semantics for objects. In fact, event semantics aren't even universal for events (e.g., bubbling). It seems better to me to have some sort of explicit contract before those semantics kick in.