Variables

Refal Plus variables can take as values ground expressions.

Each variable in Refal Plus begins with a variable type designator. The type designator specifies the set of values the variable can be bound to, and must be one of the four letters: s, t, v, or e. The variables are, accordingly, distinguished into four classes: s-variables, t-variables, v-variables, and e-variables.

A variable's value should be consistent with the type of the variable: an s-variable's value must be a symbol, a t-variable's value must be a ground term, a v-variable's value must be a non-empty ground expression, and, finally, an e-variable's value may be any ground expression,

In the following, the term "ve-variable" will be understood to mean "a variable that is either a v-variable or an e-variable".