Haskell's options for nominal subtyping are incredibly limited; Scala goes much farther (lets not get into O'Haskell). Much of Scala's power is missing from Haskell, or at least, is quite differently directed. As for dynamic typing, Scala is definitely not trying to compete with a dynamic language.
Right, and how well do subtyping and implicits get along?
This is the problem, everything and the kitchen sink is tossed into Scala without any consideration for how well things work together because they've let it be a PLT grad students playground.
No idea who your demigod is, but Martin is probably the best programmer I've worked with. How subtyping is combined with type inference in Scala is quite workable, not perfect, but not a train wreck either.
Scala isn't really the best functional language, but it might be the best OO language out there, especially with traits, no other statically typed language has done mixins as well.
5 years is a long time in terms of Scala, maybe the Scala community has the chance to welcome you back some time in the future and show you how much stuff has been improved since back then? :-)
> This is the problem, everything and the kitchen sink is tossed into Scala without any consideration for how well things work together because they've let it be a PLT grad students playground.