Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
v3:grammar [2022/01/09 10:53] – neils | v3:grammar [2022/01/09 11:59] (current) – removed neils | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Grammar ====== | ||
- | |||
- | This is the formal definition of XC=BASIC' | ||
- | |||
- | ===== Program ===== | ||
- | |||
- | < | ||
- | <svg xmlns=" | ||
- | < | ||
- | <style type=" | ||
- | @namespace " | ||
- | .line | ||
- | .bold-line | ||
- | .thin-line | ||
- | .filled | ||
- | text.terminal | ||
- | font-size: 12px; | ||
- | fill: #141000; | ||
- | font-weight: | ||
- | } | ||
- | text.nonterminal | ||
- | font-size: 12px; | ||
- | fill: #1A1400; | ||
- | font-weight: | ||
- | } | ||
- | text.regexp | ||
- | font-size: 12px; | ||
- | fill: #1F1800; | ||
- | font-weight: | ||
- | } | ||
- | rect, circle, polygon {fill: #332900; stroke: #332900;} | ||
- | rect.terminal | ||
- | rect.nonterminal | ||
- | rect.text | ||
- | polygon.regexp | ||
- | </ | ||
- | </ | ||
- | < | ||
- | < | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | < | ||
- | < | ||
- | </ | ||
- | |||
- | Program | ||
- | |||
- | ===== Line ===== | ||
- | |||
- | < | ||
- | <svg xmlns=" | ||
- | < | ||
- | <style type=" | ||
- | @namespace " | ||
- | .line | ||
- | .bold-line | ||
- | .thin-line | ||
- | .filled | ||
- | text.terminal | ||
- | font-size: 12px; | ||
- | fill: #141000; | ||
- | font-weight: | ||
- | } | ||
- | text.nonterminal | ||
- | font-size: 12px; | ||
- | fill: #1A1400; | ||
- | font-weight: | ||
- | } | ||
- | text.regexp | ||
- | font-size: 12px; | ||
- | fill: #1F1800; | ||
- | font-weight: | ||
- | } | ||
- | rect, circle, polygon {fill: #332900; stroke: #332900;} | ||
- | rect.terminal | ||
- | rect.nonterminal | ||
- | rect.text | ||
- | polygon.regexp | ||
- | </ | ||
- | </ | ||
- | < | ||
- | < | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | </ | ||
- | |||
- | Line ::= Label? ( Statement ( ':' | ||
- | |||
- | Referenced by: | ||
- | * [[# | ||
- | |||
- | ===== Statement ===== | ||
- | |||
- | < | ||
- | <svg xmlns=" | ||
- | < | ||
- | <style type=" | ||
- | @namespace " | ||
- | .line | ||
- | .bold-line | ||
- | .thin-line | ||
- | .filled | ||
- | text.terminal | ||
- | font-size: 12px; | ||
- | fill: #141000; | ||
- | font-weight: | ||
- | } | ||
- | text.nonterminal | ||
- | font-size: 12px; | ||
- | fill: #1A1400; | ||
- | font-weight: | ||
- | } | ||
- | text.regexp | ||
- | font-size: 12px; | ||
- | fill: #1F1800; | ||
- | font-weight: | ||
- | } | ||
- | rect, circle, polygon {fill: #332900; stroke: #332900;} | ||
- | rect.terminal | ||
- | rect.nonterminal | ||
- | rect.text | ||
- | polygon.regexp | ||
- | </ | ||
- | </ | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | < | ||
- | < | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | <rect x=" | ||
- | <rect x=" | ||
- | <text class=" | ||
- | < | ||
- | < | ||
- | </ | ||
- | |||
- | Statement | ||
- | ::= ' | ||
- | | _CALL | ||
- | | _CONST | ||
- | | _CONTINUE | ||
- | | _DATA | ||
- | | _DECLARATION | ||
- | | _DIM | ||
- | | _DO | ||
- | | _LET | ||
- | | _END | ||
- | | _EXIT | ||
- | | _ERROR | ||
- | | ' | ||
- | | _FIELD | ||
- | | _FOR | ||
- | | _FUNCTION | ||
- | | _GENERIC | ||
- | | _GET | ||
- | | _GOTO | ||
- | | _GOSUB | ||
- | | _INCBIN | ||
- | | _INCLUDE | ||
- | | _IF | ||
- | | _INPUT | ||
- | | _LOOP | ||
- | | _NEXT | ||
- | | _ON | ||
- | | _ORIGIN | ||
- | | _PRINT | ||
- | | _READ | ||
- | | _REM | ||
- | | _RETURN | ||
- | | _SUB | ||
- | | _SWAP | ||
- | | _SYS | ||
- | | _TYPE | ||
- | | _WRITE | ||