It is possible for the XPE parser to determin what your source code is trying to do depending on the context in which the symbols appear. However it is also possible that a mistake early on in your source could trick the parser into seeing errors further on in the source code and not at the place where it actually occured. This type of mistake is difficult for the user to track down and fix. So it has been decided to mandate certain types of hints to the parser. That is, the user must define a symbol that is not reserved as being either a variable or a function. This does not apply to members of structures since structures in XPE are dynamic.
source code format
The source code is NOT free format
Only one statement to a line is allowed
statement seperators are not required or allowed ('C' uses the semicolon ';' character, XPE uses end of line)
'for', 'while', and 'if' statements have strict formats and cannot be split across multiple lines
for statement must all be on one line
for <expr> while <expr> step <expr> do
subsequent statements that make up the body of the for loop must be placed on subsequent lines and the 'done' statement must be the last statement of the loop
see source format for more details
currently methods must explicitly prefix object members with 'this.'
loop (for, while)
conditional (if then else)
modules / scope