2006-04-18から1日間の記事一覧

演習問題をとく

Haskellの簡単な解説ばかりではあれなので、ちょっと演習問題をといてみることにします。課題は、ここの最後のほうに書かれている演習問題以下自分の実装 hasko$ cat kougaku1.hs mul m n |n == 0 = 0 |otherwise = m + mul m (n-1) maxOccurs::Int -> Int -…

カリー化

関数(+)というのは、引数ふたつをとり、引数を足したものを返す関数です。 Prelude> (+) 1 3 4 これは、「引数をひとつをもらい、もう一つの引数に、足したものを返す」関数といえます。もし、この関数が引数を一つもっている状態だったら、どのようにいえる…

高階関数

高階関数は、引数や返り値に関数がつかわれる関数です。代表は、やっぱりmapでしょう。mapは、引数に関数とリストをとります。 そして、リストの各要素にたいして、関数を適用したリストをかえします。 Prelude> map (1+) [1,2,3] [2,3,4] 追記: id:n9dさん…