reduceを作ってみる
hugsをapt-getしてみた。
car (a:d) = a cdr (a:d) = d cadr (a:d) = car d add x y = x + y reduce f x [] = x reduce f x (a:d) = f a (reduce f x d) sum = reduce add 0 multiply = reduce (\ x y -> x * y) 1 a = map (+1) b = map (+2) c = (a . b)
hugsをapt-getしてみた。
car (a:d) = a cdr (a:d) = d cadr (a:d) = car d add x y = x + y reduce f x [] = x reduce f x (a:d) = f a (reduce f x d) sum = reduce add 0 multiply = reduce (\ x y -> x * y) 1 a = map (+1) b = map (+2) c = (a . b)