Runtime Environments and Activation Records
The code a compiler generates runs inside a runtime environment: an agreed layout of memory and an agreed protocol for calls and returns.
Compiler Design · topic
Static, stack and heap storage, activation records and the control stack, access links and displays, static and dynamic scoping, and parameter passing by value, reference, value-result and name.
The code a compiler generates runs inside a runtime environment: an agreed layout of memory and an agreed protocol for calls and returns.
Two questions decide what a procedure call does with names. Parameter passing answers how an actual parameter in the call is connected to the formal parameter in the procedure: by copying its value, by sharing its location, by copying in and out, or by re-evaluating the argument text.
One-page visual sheets for this topic, in the sheet library on the store. Previews are free; the full sheets come with the subject pack.