churf/Grammar.cf
2023-01-23 17:17:06 +01:00

23 lines
466 B
CFEngine3

Program. Program ::= [Def] ;
DExp. Def ::= Ident ":" Type
Ident [Ident] "=" Exp ;
separator Def "";
separator Ident "";
separator Type "->";
EId. Exp3 ::= Ident ;
EInt. Exp3 ::= Integer ;
-- EApp. Exp2 ::= Exp2 Exp3 ;
EAdd. Exp1 ::= Exp1 "+" Exp2 ;
-- EAbs. Exp ::= "\\" Ident ":" Type "." Exp ;
coercions Exp 3 ;
TInt. Type1 ::= "Int" ;
TPol. Type1 ::= Ident ;
TFun. Type ::= [Type] ;
coercions Type 1 ;
comment "--" ;
comment "{-" "-}" ;