15D. Summary

Functions are independent of one another. When a function is called, a new frame is created for it, holding the variables for that call. Only the function running that call can use the variables in its frame.

Recursion is the ability of a function to call itself. It actually calls a copy of itself, with different variables. Recursion has some advantages over loops. Recursive definitions of many functions take less time to develop than definitions based on loops, and expecially involve less debugging.