Variable levels


Program variables can be used in main program.

The main program is evaluated at level 0.


There are 9 variable levels to evaluate variables.

When EVAL is used with a program variable that variable is evaluated
at level 1.

If that variable calls another variable, the second variable is evaluated
at level 2. 

If a variable (level 2) calls another variable, the last variable is
evaluated at level 3 and so on ...

In general, if a variable evaluated at level N calls another variable,
the new variable will be evaluated at level N+1.


Examples: 

Define A as << 2 * B + >>
Define B as << C + 5 + D / >>
Define C as << 3 * >>
Define D as << E + 1 + >>
Define E as 10

From keyboard we write 6 ENTER A and press EVAL

Then:

A is evaluated at level 1.
B is evaluated at level 2.
C and D are evaluated at level 3.
E is simply replaced by 10.


Area (Region) 3 is used to evaluate C. 
To evaluate D, area 3 is cleaned first, so data used for evaluating C 
is deleted in Area 3.  

The original variable C is not deleted. Only the data put in the temporary
area 3 is deleted to allocate space for evaluation of D.