Go backward to
Lazy Evaluation Semantics
Go up to
Top
Go forward to
Variable Declarations
Lazy Evaluation Semantics
No
store argument mentioned:
Lazy evaluation never suppplies a store to a record binding, a lambda abstraction, or the argument of a lambda abstraction.
Records and lambda abstractions constitute a "functional sublanguage" overlaid over imperative core.
Typing rules are
sound
.
Copy rules:
with
(
i
=E
i
)
i
in
I
do
E
=>
[E
i
/
i
]
i
in
I
E
(
lambda
I:
theta
. E
1
)E
2
=>
[E
2
/I]E
1
Calculation of program semantics:
Apply copy rules to make all bindings.
Use semantics of core language.
Author:
Wolfgang Schreiner
Last Modification: May 14, 1998