MODULE ::= EXPR* EXPR ::= | int | float | bool | string | ident | CALL | LAMBDA | FUNDECL | VARDECL | NS | IMPORT CALL ::= opar EXPR EXPR* cpar LAMBDA ::= opar rarrow opar PARAMS cpar BODY cpar PARAMS ::= ident* BODY ::= EXPR* FUNDECL ::= | 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