Vergleich Typklassen/Interfaces

interface I { }   |   class I where { }

Polymorphie auf der Argumentseite:

boolean foo (I x) { ... }  // universell
foo :: I t => t -> Bool    -- universell

auf der Resultatseite:

I bar (String s) { ... }   // existenziell
bar :: I t => String -> t  -- universell



2009-11-20