Python
Pyhtonで関数をカリー化してみる
関数をカリー化するには、その言語が第一級関数をサポートしている必要がある。
つまり関数を動的に生成できて、それを変数に格納できたり、別の関数に渡せたり、関数から戻せたりできる機能がその言語にあれば良いということになる。
さらにその関数がクロージャになっているか、その関数にキャプチャ機能があるか、どちらかが必要だ。
Pythonのラムダ式はこのすべてができるので、関数のカリー化ができる。
ここでは引数を2つ取り、その和を返す下のような単純な関数をカリー化してみることにする。
この関数をカリー化すると、下の「add_n_func」のような感じになる。
|