by shigemk2

当面は技術的なことしか書かない

2012-08-20から1日間の記事一覧

高階実演

関数を受け取り、それを2回適用する。 -- 関数を2回適用する applyTwice :: (a -> a) -> a -> a applyTwice f x = f (f x) -- 関数と2つのリストを引数に取り、2つのリストの各要素にその関数を適用し、2つのリストを1つに結合する zipWith' :: (a -> b -> c…

部分適用とセクション

Haskellの関数は部分適用を利用しているつまり、関数を本来より少ない引数で呼び出しているのだ。 また、中置関数についても、セクションという機能を使って部分適用することが出来る。 中置関数をセクションするには、片側だけに値を置いて括弧で囲むだけで…

カリー化関数

Haskellのすべての関数は、公式には引数を1つだけ取ることになっているが、複数の引数も取れるように見える。複数の引数を受け取れるかのように見えた関数は、実は全てカリー化された関数だったのだ。カリー化関数とは、複数の引数を取る代わりに、常にちょ…