1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
## type Decl(MVar,y,N(0.0),Decl(MRef,x,Var(y),Binary(Seq,Assign(Var(x),Binary(Plus,Var(x),N(23.0))),Binary(Seq,Print(Binary(Plus,Var(x),N(45.0))),Print(Binary(Plus,Var(y),N(67.0))))))) : Undefined
## step 0:
## Map()
## Decl(MVar,y,N(0.0),Decl(MRef,x,Var(y),Binary(Seq,Assign(Var(x),Binary(Plus,Var(x),N(23.0))),Binary(Seq,Print(Binary(Plus,Var(x),N(45.0))),Print(Binary(Plus,Var(y),N(67.0)))))))
## step 1:
## Map(A(1) -> N(0.0))
## Decl(MRef,x,Unary(Deref,A(1)),Binary(Seq,Assign(Var(x),Binary(Plus,Var(x),N(23.0))),Binary(Seq,Print(Binary(Plus,Var(x),N(45.0))),Print(Binary(Plus,Unary(Deref,A(1)),N(67.0))))))
## step 2:
## Map(A(1) -> N(0.0))
## Binary(Seq,Assign(Unary(Deref,A(1)),Binary(Plus,Unary(Deref,A(1)),N(23.0))),Binary(Seq,Print(Binary(Plus,Unary(Deref,A(1)),N(45.0))),Print(Binary(Plus,Unary(Deref,A(1)),N(67.0)))))
## step 3:
## Map(A(1) -> N(0.0))
## Binary(Seq,Assign(Unary(Deref,A(1)),Binary(Plus,N(0.0),N(23.0))),Binary(Seq,Print(Binary(Plus,Unary(Deref,A(1)),N(45.0))),Print(Binary(Plus,Unary(Deref,A(1)),N(67.0)))))
## step 4:
## Map(A(1) -> N(0.0))
## Binary(Seq,Assign(Unary(Deref,A(1)),N(23.0)),Binary(Seq,Print(Binary(Plus,Unary(Deref,A(1)),N(45.0))),Print(Binary(Plus,Unary(Deref,A(1)),N(67.0)))))
## step 5:
## Map(A(1) -> N(23.0))
## Binary(Seq,N(23.0),Binary(Seq,Print(Binary(Plus,Unary(Deref,A(1)),N(45.0))),Print(Binary(Plus,Unary(Deref,A(1)),N(67.0)))))
## step 6:
## Map(A(1) -> N(23.0))
## Binary(Seq,Print(Binary(Plus,Unary(Deref,A(1)),N(45.0))),Print(Binary(Plus,Unary(Deref,A(1)),N(67.0))))
## step 7:
## Map(A(1) -> N(23.0))
## Binary(Seq,Print(Binary(Plus,N(23.0),N(45.0))),Print(Binary(Plus,Unary(Deref,A(1)),N(67.0))))
## step 8:
## Map(A(1) -> N(23.0))
## Binary(Seq,Print(N(68.0)),Print(Binary(Plus,Unary(Deref,A(1)),N(67.0))))
68.0
## step 9:
## Map(A(1) -> N(23.0))
## Binary(Seq,Undefined,Print(Binary(Plus,Unary(Deref,A(1)),N(67.0))))
## step 10:
## Map(A(1) -> N(23.0))
## Print(Binary(Plus,Unary(Deref,A(1)),N(67.0)))
## step 11:
## Map(A(1) -> N(23.0))
## Print(Binary(Plus,N(23.0),N(67.0)))
## step 12:
## Map(A(1) -> N(23.0))
## Print(N(90.0))
90.0
## result:
## Map(A(1) -> N(23.0))
## Undefined
undefined
|