Go backward to
Escaping Locations
Go up to
Top
Go forward to
Extent in Other Block Forms
Escaping Locations
Introduction of
pointer variables
:
Variables may contain locations.
Let
A
be global pointer variable.
begin var
B
:
newint in
A
:=
B
end
B
's location escapes from block!
Separation of stack and
heap
store.
Actual parameter containing location transmitted to non-local abstraction.
Abstraction might save variable in non-local variable.
Lazily evaluated parameters that mention variables.
P
(@
A
+1)
In current language unevaluated phrases cannot be stored.
Author:
Wolfgang Schreiner
Last Modification: May 14, 1998