カリー化
カリー化(currying)
複数の引数をとる関数を1変数関数に置き換えることをカリー化
f(x, y)な二引数関数があったときに、curry(f)のように関数fを引数に取ってg(x)(y)のよう関数gが出てくるものはカリー化している
curry(f) = g
ここでgはg(x)(y) = f(x, y)であるような関数
ラムダ計算の書き方だと、f(x, y)は$ \lambda x.(\lambda y.(\lambda f(x, y))) Haskell以外にもTypeScript、Python、Rubyなどカリー化ができる言語がいくつかある
この記事が良かった
関連
確認用
Q. カリー化
Q. カリー化の例
Q. Haskellのカリー化、部分適用
Q. Rubyのカリー化、部分適用
Q. Pythonのカリー化、部分適用
メモ
調査用
Wikipedia.icon
Wikipedia.icon