Introduction
Imagine you are following a recipe that calls for other recipes inside it. You need a way to keep track of where you are and what ingredients you need at each step. Activation records and the call stack solve this problem for programs when they call functions inside other functions.