2023-09-20 11:31:35 +00:00
|
|
|
MODULE ::= EXPR*
|
|
|
|
EXPR ::=
|
|
|
|
| int | float | bool | string
|
2023-09-20 15:17:13 +00:00
|
|
|
| ident
|
|
|
|
| CALL
|
2023-09-21 19:17:39 +00:00
|
|
|
| LAMBDA
|
2023-09-23 03:58:13 +00:00
|
|
|
| FUNDECL
|
2023-09-23 17:21:55 +00:00
|
|
|
| VARDECL
|
|
|
|
| NS
|
|
|
|
| IMPORT
|
2023-09-23 22:40:08 +00:00
|
|
|
| ARRAY
|
2023-09-21 19:17:39 +00:00
|
|
|
CALL ::= opar EXPR EXPR* cpar
|
|
|
|
LAMBDA ::= opar rarrow opar PARAMS cpar BODY cpar
|
|
|
|
PARAMS ::= ident*
|
|
|
|
BODY ::= EXPR*
|
2023-09-23 03:58:13 +00:00
|
|
|
FUNDECL ::=
|
2023-09-23 17:21:55 +00:00
|
|
|
| opar decl opar ident PARAMS cpar BODY cpar
|
|
|
|
VARDECL ::= opar decl ident EXPR cpar
|
|
|
|
NS ::= ident ns ident
|
|
|
|
IMPORT ::= opar import string cpar
|
|
|
|
SHORT_IMPORT ::= opar decl import ident string? cpar
|
2023-09-23 22:40:08 +00:00
|
|
|
ARRAY ::= osquare EXPR* csquare
|