MODULE ::= EXPR* EXPR ::= bool | int | ident | VARDECL | FUNDECL | FUNCALL | LAMBDA VARDECL ::= opar decl ident EXPR cpar FUNDECL ::= opar decl opar ident* cpar BODY cpar FUNCALL ::= opar EXPR EXPR* cpar LAMBDA ::= opar lambda opar PARAMS cpar BODY cpar PARAMS ::= ident* BODY ::= EXPR*