Go backward to Escaping Locations
Go up to Top
Go forward to Declaration Blocks
Extent in Other Block Forms
- Declaration block (module)
- module M = begin var A: newint in
{ proc INIT = A:=0,
proc SUCC = A:=@A+1
fun VAL = @A
} end
- Location for A is allocated when M is evaluated.
- A's location must escape declaration block (body of M)!
-
[[pi |- begin D in D end:
pidec]] =
[[pi -U- pi |- D: pidec]](
-U- )
where (, ) = [[pi |- D: pidec]]
- Locations allocated within D and D are retained.
Wolfgang.Schreiner@risc.uni-linz.ac.at
Id: qualification.tex,v 1.2 1996/05/02 11:53:49 schreine Exp schreine