15 lines
308 B
BNF
15 lines
308 B
BNF
PROG ::= FUNCALL*
|
|
EXPR ::=
|
|
LITERAL
|
|
| FUNCALL
|
|
| VARDECL
|
|
| FUNDECL
|
|
| LAMBDA
|
|
LAMBDA ::= opar rarrow opar PARAMS cpar BODY cpar
|
|
PARAMS ::= ident*
|
|
BODY ::= expr*
|
|
VARDECL ::= opar decl ident EXPR cpar
|
|
FUNDECL ::= opar decl opar ident PARAMS cpar EXPR cpar
|
|
FUNCALL ::= opar ident EXPR* cpar
|
|
LITERAL ::= int | ident
|