W.I.S. Laboratory
menu-bar

kotlin


kotlinで関数をカリー化してみる

その言語が第一級関数がサポートしていれば、関数のカリー化が可能だ。
関数を動的に生成できて、それが変数に格納できたり、他の関数に渡せたり、ある関数から戻せたりできれば、その関数は第一級関数だ。
Kotlinの関数とラムダはこのすべてができるので、関数をカリー化することができる。

個人的にJavaと比べてKotolinが良いなと思う点は複数あるが、関数が単体で存在できる点は使い勝手が良いと思う。
C++、Go、Rust、Swift、JavaScript、PHP、Perl、Python、Rubyなど、世の中の言語は関数が単体で存在できるものが多いので、そういった言語をやってきた人にとってKotolinはすんなり入ってくる感じがする。

例えば、下のような「2つの数値を受け取って、その和を返す」という関数をカリー化してみる。

この関数をカリー化すると、下の「addNFunc」のような感じになる。


[ 戻る ]
saluteweb