tail recursion optimisation
<programming> (TRO) When the last thing a function or procedure does is
to call itself, it is not necessary to retain the calling environment. This is
important when a procedure calls itself recursively many times since, without
tail recursion optimisation, the environments of earlier invocations would fill
up the memory only to be discarded when (if) the last call terminated.
Tail recursion optimisation is a special case of last call optimisation but it
allows the further optimisation that some arguments may be passed in situ,
possibly in registers. It allows recursive functions to be compiled into
iterative loops.
See also conversion to iteration, tail recursion modulo cons.
(2006-04-16)
Nearby terms:
tail circuit « tail recursion « tail recursion
modulo cons «
tail recursion optimisation » tail-strict » TAL
» TALE
|