Mental Model
Recursion is when a function calls itself to solve smaller parts of a problem until it reaches a simple case.
Analogy: Imagine a set of Russian dolls where each doll opens to reveal a smaller doll inside until the smallest doll is reached and then you close them back up in reverse order.
function call -> function call -> function call -> base case reached ↑ current call at top of stack
