Typklassen können in Beziehung stehen.
Ord ist tatsächlich abgeleitet von Eq:
class Eq a where (==) :: a -> a -> Bool class Eq a => Ord a where (<) :: a -> a -> Boolalso muß man erst die Eq-Instanz deklarieren, dann die Ord-Instanz.
Beachte: das sind Abhängigkeiten (Ableitungen, Vererbungen) zwischen Typklassen (Interfaces) -- gut, ...hingegen sind Abhängigkeiten (Vererbungen) zwischen Implementierungen schlecht (und in Haskell gar nicht möglich...)