module Syntax
rascal-0.28.2
typepal-0.8.3
Usage
import examples::calc::Syntax;
syntax Calc
start syntax Calc
= Decl+ ❷
;
syntax Decl
syntax Decl
= "var" Id "=" Exp ";" ❸
;
syntax Exp
syntax Exp
= Id ❹
| Integer ❺
| Boolean ❻
| bracket "(" Exp ")" ❼
> left Exp "*" Exp ❽
> left Exp "+" Exp ❾
> "if" Exp "then" Exp "else" Exp ❶⓿
;
syntax Reserved
keyword Reserved
= "var" | "if" | "then" | "else"
;