8:30 AM Paul, you are correct on all counts. This is indeed a fundamental problem in Scala's type system (also in its theory, \nu-Obj): Abstract type members are linearized and the last one wins. It is later checked that that last one has a constraint that implies all others. But there is never a unification of constraints. DOT fixes this.