(hier „free`` = kostenlos)
Phil Wadler, ICFP 1989: http://homepages.inf.ed.ac.uk/wadler/topics/parametricity.html
Beispiele:
f :: forall a . [a] -> [a]
,
dann gilt für alle g :: a -> b, xs :: [a]
f (map g xs) == map g (f xs)
f :: forall a . [a] -> a
,
dann gilt für alle g :: a -> b, xs :: [a]
f (map g xs) == g (f xs)