Start of Interpreter for program ext1.tri at Sun Dec 12 23:10:57 2010

Program

# ARRAY a[4]
a[0]:=1
a[1]:=2
a[2]:=3
a[3]:=((a[0]+a[1])+a[2])#

Parsing tree

root
ARRAY
a4
[]:=
a01
[]:=
a12
[]:=
a23
[]:=
a3+
+
->
a0
->
a1
->
a2

Table of constants

c1=4c2=0c3=1c4=2c5=3

Table of identifiers

i1=a

Modified tree

root
ARRAY
a4
[]:=
a01
[]:=
a12
[]:=
a23
[]:=
a3+
+
->
a0
->
a1
->
a2


Stackid a=0

Stackid a=0const=4
interpreting the operator ARRAY a[4]
ARRAY
a4
[]:=
a01
[]:=
a12
[]:=
a23
[]:=
a3+
+
->
a0
->
a1
->
a2

Created new array a
a0000

Stack

Stackid a=0

Stackid a=0const=0

Stackid a=0const=0const=1
interpreting the operator a[0]:=1
[]:=
a01
[]:=
a12
[]:=
a23
[]:=
a3+
+
->
a0
->
a1
->
a2

Writed value 1 to a[0]
a1000

Stack

Stackid a=0

Stackid a=0const=1

Stackid a=0const=1const=2
interpreting the operator a[1]:=2
[]:=
a12
[]:=
a23
[]:=
a3+
+
->
a0
->
a1
->
a2

Writed value 2 to a[1]
a1200

Stack

Stackid a=0

Stackid a=0const=2

Stackid a=0const=2const=3
interpreting the operator a[2]:=3
[]:=
a23
[]:=
a3+
+
->
a0
->
a1
->
a2

Writed value 3 to a[2]
a1230

Stack

Stackid a=0

Stackid a=0const=3

Stackid a=0const=3id a=0

Stackid a=0const=3id a=0const=0
interpreting the operator a[0]
->
a0
->
a1
a[0]=1
Stackid a=0const=3tm=1

Stackid a=0const=3tm=1id a=0

Stackid a=0const=3tm=1id a=0const=1
interpreting the operator a[1]
->
a1
a[1]=2
Stackid a=0const=3tm=1tm=2
interpreting the operator (a[0]+a[1])
+
->
a0
->
a1
->
a2

3 = 1 + 2

Stackid a=0const=3tm=3

Stackid a=0const=3tm=3id a=0

Stackid a=0const=3tm=3id a=0const=2
interpreting the operator a[2]
->
a2
a[2]=3
Stackid a=0const=3tm=3tm=3
interpreting the operator ((a[0]+a[1])+a[2])
+
+
->
a0
->
a1
->
a2

6 = 3 + 3

Stackid a=0const=3tm=6
interpreting the operator a[3]:=((a[0]+a[1])+a[2])
[]:=
a3+
+
->
a0
->
a1
->
a2

Writed value 6 to a[3]
a1236

Stack
program ext1.tri is completed

THE VARIABLES:

a=0

ARRAYS:

a1236

Interpreter ended at Sun Dec 12 23:10:57 2010