News for hackers. Stuff that matters.
Re:The Brittleness Of Type Hierarchies by chromatic on Wednesday May 09, 2012 @04:12PM (#3950252)
It was a combination of dissatisfaction with multiple inheritance (see Perl 5, C++), interfaces (see Java), and mixins (see Perl 5, Ruby), as well as an acknowledgement that aspects (see Java) and multimethods (see Common Lisp) solve part of the problem well and part of the problem poorly.

Then Allison and I saw Dr. Black present the Smalltalk traits paper and she realized that their formalism was exactly what I'd been talking about informally, so we borrowed that instead.

Re:The Brittleness Of Type Hierarchies by tomp on Thursday May 10, 2012 @07:10AM (#3952845)
How are roles different from mixins?

The only difference that I can think of is that mixins are declared at class declaration, is that what you mean?

Re:The Brittleness Of Type Hierarchies by chromatic on Friday May 11, 2012 @01:22PM (#3960261)
Roles have specific composition rules which forbid name collisions; there's no last-in wins rule. Roles also provide type allomorphism which is much less ambiguous than duck typing.