Go backward to Copy Rule
Go up to Top
Go forward to Parameter Substitution
Parameter Copy Rule
- Example:
- var A: newint; proc P = lambdaX: intexp.A:=X
in call P(@A+1)
- var A: newint in (lambdaX:
intexp.A:=X)(@A+1)
- Rule for binding @A+1 to X:
- (lambdaI:theta.U)V [V/I]U
- var A: newint in
[@A+1/X](A:=X)
= var A: newint in A:=@A+1
- Dangerous: substitution into lambda abstractions.
- [V/I](lambdaI'.U)
- var A: newint; fun F =
@A+1;
fun G = (lambdaA:intexp.A+F)
in ...
Wolfgang.Schreiner@risc.uni-linz.ac.at
Id: parameter.tex,v 1.1 1996/04/25 11:40:48 schreine Exp schreine