Stack Overflow - Very Deep or Infinite Recursion

Very Deep or Infinite Recursion

The most common cause of stack overflow is excessively deep or infinite recursion. Languages like Scheme, which implement tail-call optimization, allow infinite recursion of a specific sort—tail recursion—to occur without stack overflow. This works because tail-recursion calls do not take up additional stack space.

An example of infinite recursion in C.

int foo { return foo; }

The function foo, when it is invoked, continues to invoke itself, using additional space on the stack each time, until the stack overflows resulting in a segmentation fault.

Read more about this topic:  Stack Overflow

Famous quotes containing the words deep and/or infinite:

    Y’know, George, I feel that in a small way we’re doing something important. It’s satisfying a fundamental urge. It’s deep in the race for a man to want his own roof and walls and fireplace. And we’re helping him get those things in our shabby little office.
    Frances Goodrich (1891–1984)

    Philosophy, certainly, is some account of truths the fragments and very insignificant parts of which man will practice in this workshop; truths infinite and in harmony with infinity, in respect to which the very objects and ends of the so-called practical philosopher will be mere propositions, like the rest.
    Henry David Thoreau (1817–1862)