This is an old revision of the document!
The concept of recursion is actually simple but implementing it is more challenging than you might think. Recursion works by creating a function that calls itself until it hits a base case to end/breakout of the recursion function. Along with the base case, it has another case that slowly leads to the base case.
A simple implementation of this can be seen with a function that gets the factorial value given a certain number.