In addition to identifying the variant that matched, the pattern can contain variables that are bound to the corresponding elements of the value record. This is a very powerful and useful mechanism. This assoc is more polymorphic, with type . This slide intentionally left almost blank. These vary considerably from language to language.
Key idea is activation records , the machine-level equivalent of environments .
Instead, the location of each variable within the a.r. must be statically determinable by the compiler. In this language, all variables are either global or are parameters of the function currently being executed. Each time a function is called, an associated activation record is built to hold the values of the actual parameters. In addition, the a.r. contains the function's return address and a pointer to the calling function's a.r. Kamin's machine has a dedicated register ar that points to the current activation record.