Summe der Elemente einer Liste:
sum :: Num a => [a] -> a sum [] = 0 ; sum (x : xs) = x + sum xsLänge einer Liste:
length :: [a] -> Int length [] = 0 ; length (x : xs) = 1 + length xsGemeinsame Struktur (Rekursions-Schema):
foldr f z [] = z foldr f z (x : xs) = f x (foldr f z xs)(Aufgabe: Typ von
foldr
)
sum = foldr ( \ x y -> x + y ) 0 length = foldr ( \ x y -> 1 + y ) 0wobei
\ x y -> ..
eine anonyme Funktion ist