必要呼び
call by need
要求呼びとも言う
Haskell, Miranda, ALGOL 60など
最左最外簡約の変種
外側の関数適用から、引数を式のままパラメータに置換するが、一度評価した式は、結果を覚えておいて二度評価しない
同じ変数から束縛された項はポインタによって共有され,
一度簡約された項をもう一度使用する場合には最初の計算によってキャッシュされた解を利用する
メモ化する
事実上、抽象構文木ではなく抽象構文グラフ上での簡約関係である -- Tapl p.43
#??
https://gyazo.com/3200f23cb0de2c8206cc05b40e1dcc15/thumb/400#.png
#??
Haskellでそれを実感できるような例はある?
http://www.kotha.net/hperf/basics.html
参考
『計算モデルとプログラミング』 p.147