When JavaScript calls a function, it pauses the current execution context and puts a new one on the execution context stack, also called the call stack. When the function finishes, its context is removed and the caller resumes. The stack begins with the global execution context; only one piece of code executes at a time. section 5.3 section 5.7
Listing 5.5. The creation of execution contexts
function skulk(ninja) { #A
report(ninja + " skulking"); #A
} #A
function report(message) { #B
console.log(message); #B
} #B
skulk("Kuma"); #C
skulk("Yoshi"); #C
Follow how skulk calls report, then how separate calls to skulk create their own execution contexts. section 5.3







