Calculator Language (CL) supports assignment, positive and negative integers and simple
arithmetic. The allowable characters in a CL statement are thus:
A..Z : Variables
0..9 : Digits
+ : Addition operator
- : Subtraction operator
* : multiplication operator
/ : integer division operator
= : assignment operator
() : brackets
- : negative sign
All operators have the same precedence and are right associative, thus 15 - 8 - 3 = 15 - (8 - 3) = 10.
As one would expect, brackets will force the expression within them to be evaluated first. Brackets
may be nested arbitrarily deeply. An expression never has two operators next to each other (even
if separated by a bracket), an assignment operator is always immediately preceded by a variable
and the leftmost operator on a line is always an assignment. For readability, spaces may be freely
inserted into an expression, except between a negative sign and a number. A negative sign will not
appear before a variable. All variables are initialised to zero (0) and ret
Comments
Leave a comment