部分適用
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/10/03 01:23 UTC 版)
部分適用はどちらかというとカリー化や第一級関数と関連する。複数の引数を取る関数において、一部の引数だけ適用された関数を得ることである。これに対して、すべての引数を適用することを完全適用と呼ぶ。例として、Haskellのような関数型言語で、与えられた数値を2倍する関数を部分適用で作ると multiply x y = x * ytwice x = multiply x 2 となる。部分適用されているのはtwiceを定義している'multiply x 2'の部分である。multiply関数は本来なら multiply 2 3 のようにして使用するものであるが、これに2だけ適用して新たな関数twiceを得るのが部分適用である。部分適用の重要性はモジュール性を高めることである。奇数・偶数の判定といった単純なものから、高階関数を駆使した複雑なものまで作り出すことができる。とくに遅延評価の言語で利用するとその効果は大きい。一方で、関数に副作用があると、思いもよらない結果をもたらすかもしれない。
※この「部分適用」の解説は、「評価戦略」の解説の一部です。
「部分適用」を含む「評価戦略」の記事については、「評価戦略」の概要を参照ください。
- 部分適用のページへのリンク