Gcl1File: Space gcl1 Space Block Word Newline Gcl1File ::= Space* 'gcl1' ( ( Space | Block ) Word? )* Newline no referencesBlock: [ Word Space Block ] Block ::= '[' Word? ( ( Space | Block ) Word? )* ']' referenced by: Block Gcl1File Word: Keyword Prefix Name Number Operator Word ::= Keyword | Prefix? ( Name | Number ) Operator? referenced by: Block Gcl1File Keyword: call deek def do else if < = > <= <> >= 0 loop loop peek pop push ret Keyword ::= 'call' | 'deek' | 'def' | 'do' | 'else' | 'if' ( '<' | '=' | '>' | '<=' | '<>' | '>=' ) '0' 'loop'? | 'loop' | 'peek' | 'pop' | 'push' | 'ret' referenced by: Word Prefix: < > \ % Prefix ::= [<>\%] referenced by: Word Name: Letter Letter _ Decimal Name ::= Letter ( Letter | '_' | Decimal )* referenced by: Word Operator: - + & | ^ = . , : ; ! ? ++ -- << Operator ::= [-+&|^=.,:;!?] | '++' | '--' | '<<' referenced by: Word Number: - + Decimal $ Hexadecimal Number ::= [-+]? ( Decimal+ | '$' Hexadecimal+ ) referenced by: Word Comment: { Space [#x0021-#x007A] [#x007C] [#x007E] } Comment ::= '{' ( Space | [#x0021-#x007A#x007C#x007E] )* '}' referenced by: Space Letter: [a-z] [A-Z] Letter ::= [a-zA-Z] referenced by: Name Decimal: [0-9] Decimal ::= [0-9] referenced by: Name Number Hexadecimal: [0-9] [a-f] [A-F] Hexadecimal ::= [0-9a-fA-F] referenced by: Number Space: [#x0020] Newline Comment Space ::= #x0020 | Newline | Comment referenced by: Block Comment Gcl1File Newline: [#x0009] [#x000A] Newline ::= #x0009? #x000A referenced by: Gcl1File Space   ... generated by Railroad Diagram Generator R R