{- Beispiel fuer das exponentielle Verhalten der Haskell-Typinferenz Die Typinferenz in dem Beispiel unten ueberfordert sowohl ghc als auch hugs mit den Standardeinstellungen. Man kann mehr Speicher anfordern (fuer hugs mit der -h Option, fuer ghc mit der +H option), aber wenn dann die Zeile x6= ... auskommentiert wird ist auch bald wieder Schluss... -} module Main where test= let x1= \y-> (y, y) x2= \y-> x1 (x1 y) x3= \y-> x2 (x2 y) x4= \y-> x3 (x3 y) x5= \y-> x4 (x4 y) -- x6= \y-> x5 (x5 y) in x5 (\y-> y) main = return ()