class C a where m :: a -> a -> Foo f :: C a => a -> Int f x = m x x + 5...sind Abkürzungen für Wörterbücher:
  
data C a = C { m :: a -> a -> Foo }
f :: C a -> a -> Int
f dict x = ( m dict ) x x + 5
Für jedes Constraint setzt der Compiler
ein Wörterbuch ein.