Go backward to Dynamic Scoping Go up to Top Go forward to Self-Application |
LET X = a0 IN
(LET Y = X CONS NIL IN
(LET X = X CONS Y IN Y))
=> [X <- a0]
LET Y = X CONS NIL IN
(LET X = X CONS Y IN Y)
=> [X <- a0] [Y <- X CONS NIL]
LET X = X CONS Y IN Y
=> [X <- a0] [Y <- X CONS NIL] [X
<- X CONS Y]
Y
=> [X <- a0] [Y <- X CONS NIL] [X
<- X CONS Y]
X CONS NIL
=> [X <- a0] [Y <- X CONS NIL] [X
<- X CONS Y]
(X CONS Y) CONS NIL
=> [X <- a0] [Y <- X CONS NIL] [X
<- X CONS Y]
(X CONS (X CONS Y)) CONS NIL
=> ...