29 lines
595 B
Plaintext
29 lines
595 B
Plaintext
parser: SLR(1)
|
|
lexesis: bfLexer.lxs
|
|
terminals:
|
|
"PLUS"
|
|
"MINUS"
|
|
"GREATER"
|
|
"LESS"
|
|
"POINT"
|
|
"COMMA"
|
|
"LBRACKET"
|
|
"RBRACKET"
|
|
precedence:
|
|
left
|
|
nonassoc
|
|
right
|
|
start: <program>
|
|
grammar:
|
|
<program> ::= <instruction> <program> [PROGRAM]
|
|
| [EMPTY]
|
|
;
|
|
<instruction> ::= "PLUS" [OPERATION]
|
|
| "MINUS" [OPERATION]
|
|
| "GREATER" [OPERATION]
|
|
| "LESS" [OPERATION]
|
|
| "POINT" [OPERATION]
|
|
| "COMMA" [OPERATION]
|
|
| "LBRACKET" <program> "RBRACKET" [LOOP]
|
|
;
|