Certain pieces of other people's public domain code has been spliced into this FAQ for purely demonstrative purposes, and it is by no means to be assumed that Quinn Tyler Jackson is claiming ownership of such pieces of source code. All source remains the property of those who originally wrote it, as understood by Canadian, American, and International Treaty. Actually, that's a pretty sad joke.
Recursion is a powerful programming tool, and any comprehensive programming language allows it.
This thing will go in circles until the stack is full, crashing the program should it ever be called. It is sometimes hard to know in advance how many times a recursive routine will end up calling itself, and therefore, one cannot know with any accuracy how much a given recursive routine will decide to rob from the stack. Sometimes it is easy to overlook this point. Consider the above simple example. It results in a permanent time out known as a crash.