This is an old revision of the document!


Grammar

This is the formal definition of XC=BASIC's grammar (generated by RR - Railroad Diagram Generator).

NumericLiteral

- $ % [0-9] [A-F] d . [0-9] E - [0-9]

NumericLiteral
       ::= '-'? ( '$' | '%' )? [0-9A-F]+ 'd'? ( '.' [0-9]+ )? ( 'E' '-'? [0-9]+ )?

Referenced by:

Program

Line EOF

Program  ::= Line* EOF

Line

Label Statement :

Line     ::= Label? ( Statement ( ':' Statement )* )?

Referenced by:

Statement

ASM _CALL _CONST _CONTINUE _DATA _DECLARATION _DIM _DO _LET _END _EXIT _ERROR ELSE _FIELD _FOR _FUNCTION _GENERIC _GET _GOTO _GOSUB _INCBIN _INCLUDE _IF _INPUT _LOOP _NEXT _ON _ORIGIN _PRINT _READ _REM _RETURN _SUB _SWAP _SYS _TYPE _WRITE

Statement
       ::= 'ASM'
         | _CALL
         | _CONST
         | _CONTINUE
         | _DATA
         | _DECLARATION
         | _DIM
         | _DO
         | _LET
         | _END
         | _EXIT
         | _ERROR
         | 'ELSE'
         | _FIELD
         | _FOR
         | _FUNCTION
         | _GENERIC
         | _GET
         | _GOTO
         | _GOSUB
         | _INCBIN
         | _INCLUDE
         | _IF
         | _INPUT
         | _LOOP
         | _NEXT
         | _ON
         | _ORIGIN
         | _PRINT
         | _READ
         | _REM
         | _RETURN
         | _SUB
         | _SWAP
         | _SYS
         | _TYPE
         | _WRITE