A line of PILOT code contains (from left to right) the following syntax elements:
A label can also be alone in a line, not followed by other code. The syntax for a label is an asterisk followed by an identifier (alphanumeric string with alphabetic initial character).
The following commands are used in "core PILOT". Lines beginning with "R:" indicate a remark (or a comment) explaining the code that follows.
R:Next line of input replaces current contents of accept buffer
R:Next 3 lines of input assigned to string variables 'X', 'Y' and 'Z'
R:Numeric input assigned to numeric variable "Q"
Compute and assign numeric value.
Dimension an array, on some implementations.
End (return from) subroutine or (if outside of a subroutine) abort program. Always used without any operand.
Jump to label.
Match the accept buffer against string variables or string literals.
R:Search accept buffer for "TRUTH", the value of $MEXICO and "YOUTH", in that order
The first match string (if any) that is a substring of the accept buffer is assigned to the special variable $MATCH. The buffer characters left of the first match are assigned to $LEFT, and the characters on the right are assigned to $RIGHT.
The match flag is set to 'yes' or 'no', depending on whether a match is made. Any statement that has a Y following the command letter is processed only if the match flag is set. Statements with N are processed only if the flag is not set.
Equivalent to TN: (type if last match unsuccessful)
The operand of R: is a comment, and therefore not processed.
'Type' operand as output.
R:Output a literal string
T:Thank you for your support.
R:Output a variable expression
T:Thank you, $NAME.
Use (call) a subroutine. A subroutine starts with a label and ends with E:
R:Call subroutine starting at label *INITIALIZE
Equivalent to TY: (type if last match successful)
If there is parenthesized expression in a statement, it is a test expression, and the statement is processed only if the test has a value of 'true'.
R:Type message if x>y+z
Versions of PILOT overlaid on the BASIC interpreters of early microcomputers were not unknown in the late 1970s and early 1980s, and Byte Magazine at one point published a non-Turing complete derivative of PILOT known as Waduzitdo as a way of demonstrating what a computer was capable of.