A simple way to think of mixins is as “an interface with
implementation”. If you have written Java interfaces, you have
surely found yourself writing the same implementations over and
over for each class that implements the interface. A mixin lets
you write the implementation once and have it automatically
included in each class that uses it. Mixins work best when they
are small, independent units of functionality, orthogonal to
other classes and mixins. If your mixins obey this guideline,
then the model of how mixins work is very simple: it is as if
the body of each mixin were copied textually into each class
that uses it. One way to achieve that is to name each mixin
property (attribute, method, etc.) with a prefix based on the
mixin name. We hope to improve this situation by having the
compiler warn when mixin methods collide without specifying that
they are meant to be an override If your mixins do interact,
e.g., a mixin requires certain other methods or attributes, you
can use the swf10 runtime to detec