diff options
Diffstat (limited to 'src/fix-ng/fix.sdf')
-rw-r--r-- | src/fix-ng/fix.sdf | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/fix-ng/fix.sdf b/src/fix-ng/fix.sdf index 8e9f0fa72..9dc04d937 100644 --- a/src/fix-ng/fix.sdf +++ b/src/fix-ng/fix.sdf @@ -17,7 +17,7 @@ imports Fix-Exprs Fix-Layout module Fix-Exprs imports Fix-Lexicals URI exports - sorts Expr Bind + sorts Expr Bind Formal context-free syntax Id -> Expr {cons("Var")} @@ -34,7 +34,9 @@ exports Expr Expr -> Expr {cons("Call"), left} - "{" {Id ","}* "}" ":" Expr -> Expr {cons("Function"), right} + "{" {Formal ","}* "}" ":" Expr -> Expr {cons("Function"), right} + Id -> Formal {cons("NoDefFormal")} + Id "?" Expr -> Formal {cons("DefFormal")} "rec" "{" Binds "}" -> Expr {cons("Rec")} "let" "{" Binds "}" -> Expr {cons("LetRec")} @@ -62,7 +64,7 @@ exports Expr "." Id -> Expr > Expr ExprList -> ExprList > Expr Expr -> Expr - > "{" {Id ","}* "}" ":" Expr -> Expr + > "{" {Formal ","}* "}" ":" Expr -> Expr %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |