SML has no symbols, so we use strings instead. In addition to identifying the variant that matched, the pattern can contain variables that are bound to the correspond- ing elements of the value record. This is a very powerful and useful mechanism. 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 vari- able within the a.r. must be statically determinable by the compiler. Each time a function is called, an associated activa- tion record is built to hold the values of the actual parameters. In addition, the a.r. contains the func- tion'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. On return, they must arrange that pc and ar are restored from a.r.