Syntax is based on lecture NTIN060. The formal definition of it is:
halt instruction at the very end.# is ignored. if A ?? B then Inst where
A and B are expressions, Inst is a simple statement,
and ?? is equality =, non-equality
<>, strict inequality <, >
or non-strict inequality <=, >=.
halt which stops execution of the program goto LABEL which tranfers execution to
given label. Labels are defined name_of_label:
in front of any statement, name_of_label is C-like identifier.X := W where
X is an expression which is not a literal value
and W is (Y and Z are expressions):
Y + Z,
Y - Z,
Y * Z,
Y / Z (integer division, result rounded
to zero, Z must be non-zero),
and Y % Z (remainder, Z must
be positive),Y & Z,
bitwise or Y | Z,
bitwise exclusive-or Y ^ Z,
left shift Y << Z,
right shift Y >> Z.
5 or -100, [integer], [[integer]].