OCamlのような関数型言語は再帰関数に大きく依存する 。しかし、このような関数は、メモリの消費を超過したり、大きなデータセットを処理するときにオーバーフローをスタックする可能性があります。
このような場合、テール再帰は最適化の重要なソースです。これは、再帰呼び出しが関数の最後である場合に、プログラムが呼び出し元コンテキストを削除することを可能にします 。