Mercurial > urweb
diff src/lacweb.grm @ 196:890a61991263
Lists all the way through
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sat, 09 Aug 2008 16:48:32 -0400 |
parents | 85b5f663bb86 |
children | 5dbba661deab |
line wrap: on
line diff
--- a/src/lacweb.grm Sat Aug 09 12:50:49 2008 -0400 +++ b/src/lacweb.grm Sat Aug 09 16:48:32 2008 -0400 @@ -308,8 +308,8 @@ | FOLD (CFold, s (FOLDleft, FOLDright)) | UNIT (CUnit, s (UNITleft, UNITright)) -ctuple : cterm STAR cterm ([cterm1, cterm2]) - | cterm STAR ctuple (cterm :: ctuple) +ctuple : capps STAR capps ([capps1, capps2]) + | capps STAR ctuple (capps :: ctuple) rcon : ([]) | ident EQ cexp ([(ident, cexp)]) @@ -341,9 +341,7 @@ (EAbs ("_", SOME (TRecord (CRecord [], loc), loc), eexp), loc) end) - | LPAREN etuple RPAREN COLON cexp(case etuple of - [eexp] => (EAnnot (eexp, cexp), s (LPARENleft, cexpright)) - | _ => raise Fail "Multiple arguments to expression type annotation") + | eexp COLON cexp (EAnnot (eexp, cexp), s (eexpleft, cexpright)) | eexp MINUSMINUS cexp (ECut (eexp, cexp), s (eexpleft, cexpright)) | CASE eexp OF barOpt branch branchs (ECase (eexp, branch :: branchs), s (CASEleft, branchsright)) | IF eexp THEN eexp ELSE eexp (let