Most implementations of recursion use an actual subroutine jump to save current state, invoke the function, and continue after it returns. There are optimizations that some compilers can make to exploit that the function is calling itself, but not all compilers do that.
Latest Answers