Call Stack
In computer programming, a call stack is a mechanism for an interpreter or a compiler to keep track of its place in a script that calls multiple functions. It's a stack data structure that stores information about the subroutines or functions the program is currently executing. Each time a function is called, a new entry (stack frame) is added to the top of the stack with details like the function's parameters, return address, and local variables. When a function returns, its stack frame is popped off the stack. This process helps manage the execution flow, particularly in nested or recursive function calls.