|n.||1.||The act of recurring; return.|
|Noun||1.||recursion - (mathematics) an expression such that each term is generated by repeating a particular mathematical operation|
|(mathematics, programming)||recursion - When a function (or procedure)
calls itself. Such a function is called "recursive". If the
call is via one or more other functions then this group of
functions are called "mutually recursive".|
If a function will always call itself, however it is called, then it will never terminate. Usually however, it first performs some test on its arguments to check for a "base case" - a condition under which it can return a value without calling itself.
The canonical example of a recursive function is factorial:
factorial 0 = 1 factorial n = n * factorial (n-1)
Functional programming languages rely heavily on recursion, using it where a procedural language would use iteration.
See also recursion, recursive definition, tail recursion.