I'm trying to work out how all the traits like Seq, Iterable, Traverable, TraversableLike all work together.
I'm slowly getting a bit of a spider web diagram, as I try and draw the relationships in a UML class diagram.
Is there a reason that for example scala.collection.immutable.Seq inherits from scala.collection.generic.GenericTraversableTemplate, even though it inherits that trait from its parent scala.collection.immutable.Iterable?
The collections API seems to be full of duplicated inheritances, which is leading me to think I haven't understood something...
Cheers, Ant