先行評価と遅延評価
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/01/06 04:20 UTC 版)
「関数型プログラミング」の記事における「先行評価と遅延評価」の解説
詳細は「評価戦略」を参照 関数型プログラミングでは、引数に適用した関数式を評価するタイミングの区別が重視される。引数確定と同時に評価して返り値にするのが先行評価である。引数確定してもその返り値が本当に必要になるまで評価を先送りにして、関数式の状態のままにしておくのが遅延評価である。 先行と遅延の区別は、引数渡しされる式(値が適用されている第一級関数)でよく用いられる。全引数を評価してから関数コールするのが先行評価の用例になり、未評価の引数があるままで関数コールするのが遅延評価の用例になる。必要になった時に計算するという遅延評価は、計算量を減らしてのプロセスの軽量化をもたらす。また、評価を遅延した関数式を保管して別途使用ないし反復使用するという機能(継続、ジェネレータ、例外、コルーチン)は、計算解釈順序を操作してのプロセスの柔軟化をもたらす。
※この「先行評価と遅延評価」の解説は、「関数型プログラミング」の解説の一部です。
「先行評価と遅延評価」を含む「関数型プログラミング」の記事については、「関数型プログラミング」の概要を参照ください。
- 先行評価と遅延評価のページへのリンク