Content deleted Content added
Blaisorblade (talk | contribs) →Implementation methods: Clarify the normal method of implementing tail calls |
Blaisorblade (talk | contribs) Propose merger between Tail call and Tail recursion |
||
Line 1:
{{merge|Tail call|discuss=Talk:Tail recursion#Should be merged with Tail call|date=July 2010}}
In [[computer science]], '''tail recursion''' (or '''tail-end recursion''') is a special case of [[Recursion_(computer_science)|recursion]] in which any last operation performed by the function is a recursive call, the [[tail call]], or returns a (usually simple) value without recursion. Such recursions can be easily transformed to iterations. Replacing recursion with [[iteration]], manually or automatically, can drastically decrease the amount of [[Call stack|stack]] space used and improve efficiency. This technique of iterative calculation is commonly used with [[functional programming]] languages, where the [[declarative programming|declarative approach]] and explicit handling of [[state (computer science)|state]] promote the use of recursive functions that would otherwise rapidly fill the [[call stack]].
|