駆け足で読む『プログラミングHaskell』6 再帰関数
f :: Int -> Int f 0 =1 f (n+1) = (n+1) + (f n)
-
- 「関数fの入出力の型はInt。fに0を渡したら1を返す。それ以外のときは、n+1を渡したら 関数fをnに適用した結果にn+1を加えた値を返す」
- リストに対する再帰
- (x:xs)というのがリストを先頭の要素xと残りxsとに分けることを用いて次のように書ける
f :: Num a => [a] -> a f [] = 1 f (x:xs) = x * (f xs)