in reply to
Open to debate on mixins and traits.
I recommend reading the traits paper (where ever it is).
It gives specific solutions to all the problems you mentioned
(with the exception of comparability).
The solutions are along the lines of:
"automatically do the right thing if unambiguous,
otherwise the using class must resolve the problem". Eg. namespace
clashes must be manually resolved (aliasing at import or
using fully qualified names).
The article is also clearly disentangles some problems
with traditional OO concepts and shows some non-obvious
benefits of their approach. Eg simpler method search,
class flattening. The presence of MI in perl means
we don't automatically get all the benefits but can opt in.