Go backward to
Full Language (Contd)
Go up to
Top
Go forward to
Semantics of Records and Lambda Abstractions
Higher-Order Programming Languages
Records are values in own right:
alias
A
=
loc
1
in
call
{
fun
F
=@
A
+1,
proc
P
=
A
:=
F
}.
P
R
.
I
=
with
R
do
I
Parameterization in arbitrary places:
A
:=((
lambda
X
:
intexp
.
X
+1)@
A
)+2
proc
R
(
X
:
intloc
) =
lambda
Y
:
intexp
.
X
:=
Y
Higher-order languages
Lambda abstractions and records are full-fledged values.
First-order
languages do not allow this free use.
Author:
Wolfgang Schreiner
Last Modification: May 14, 1998