差分

ナビゲーションに移動 検索に移動

真正末尾再帰

1,143 バイト追加, 2016年3月2日 (水) 05:13
ページの作成:「'''真正末尾再帰'''とは、末尾再帰を利用することで確実に末尾再帰最適化が行われることが保証されるプログラミング...」
'''真正末尾再帰'''とは、[[末尾再帰]]を利用することで確実に[[末尾再帰最適化]]が行われることが保証される[[プログラミング言語]]のことである。

== 概要 ==
[[末尾再帰]]を利用することで確実に[[末尾再帰最適化]]が行われるため、末尾再帰をいくら使用しても[[コールスタック]]などの[[リソース]]を食いつぶすなどの挙動がなく、結果として[[再帰]]の呼び出し回数に制限がない状態をいう。

また、このような[[末尾再帰最適化]]が必ず行われることが保証されている[[処理系]]([[プログラミング言語]])を指す。

[[正格評価]]の[[関数型プログラミング言語]]を名乗る[[言語]]であれば、ほぼ真正末尾再帰であると思ってよい。ただし[[正格評価]]の代表格である[[LISP]]だけは何故か真正末尾再帰ではない。その派生品である[[Scheme]]などでは真正になっている。

== 関連項目 ==
* [[再帰]]
* [[末尾再帰]]
* [[末尾再帰最適化]]

== 参考文献 ==
{{reflist}}

{{stub}}
匿名利用者

案内メニュー