From 457c482397e2ca745067e5a3ef2c7d71d7daf187 Mon Sep 17 00:00:00 2001 From: Rose Hogenson Date: Sun, 5 May 2024 21:12:16 -0700 Subject: Add tuples. --- parser.sml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'parser.sml') diff --git a/parser.sml b/parser.sml index c1432f2..9325c98 100644 --- a/parser.sml +++ b/parser.sml @@ -351,7 +351,11 @@ struct val rec atpat : Syntax.pat parser = fn st => (Syntax.PWild <$ reserved "_" <|> Syntax.PInt <$> integer - <|> between (symbol "(") (symbol ")") pat + <|> bind (between (symbol "(") (symbol ")") (sepBy pat (symbol ","))) (fn pats => + const + (case pats of + [p] => p + | _ => Syntax.PTuple pats)) <|> Syntax.PVar <$> identifier) st and pat : Syntax.pat parser = fn st => atpat st -- cgit v1.3.1