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:

    A deep wooden note
    when the wind blows ...
    Denise Levertov (b. 1923)

    They will visit you at your convenience, whether you are lonesome or not, on rainy days or fair. They propose themselves as either transient acquaintances or permanent friends. They will stay as long as you like, departing or returning as you wish. Their friendship entails no obligation. Best of all, and not always true of our merely human friends, they have Cleopatra’s infinite variety.
    Clifton Fadiman (b. 1904)