Mercurial > urweb
comparison src/lacweb.grm @ 190:3eb53c957d10
Checkboxes
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Thu, 07 Aug 2008 13:09:26 -0400 |
parents | b2d752455182 |
children | aa54250f58ac |
comparison
equal
deleted
inserted
replaced
189:20bf7487c370 | 190:3eb53c957d10 |
---|---|
49 | TYPE | NAME | 49 | TYPE | NAME |
50 | ARROW | LARROW | DARROW | 50 | ARROW | LARROW | DARROW |
51 | FN | PLUSPLUS | MINUSMINUS | DOLLAR | TWIDDLE | 51 | FN | PLUSPLUS | MINUSMINUS | DOLLAR | TWIDDLE |
52 | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | EXTERN | 52 | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | EXTERN |
53 | INCLUDE | OPEN | CONSTRAINT | CONSTRAINTS | EXPORT | 53 | INCLUDE | OPEN | CONSTRAINT | CONSTRAINTS | EXPORT |
54 | CASE | 54 | CASE | IF | THEN | ELSE |
55 | 55 |
56 | XML_BEGIN of string | XML_END | 56 | XML_BEGIN of string | XML_END |
57 | NOTAGS of string | 57 | NOTAGS of string |
58 | BEGIN_TAG of string | END_TAG of string | 58 | BEGIN_TAG of string | END_TAG of string |
59 | 59 |
316 end) | 316 end) |
317 | 317 |
318 | LPAREN eexp RPAREN DCOLON cexp (EAnnot (eexp, cexp), s (LPARENleft, cexpright)) | 318 | LPAREN eexp RPAREN DCOLON cexp (EAnnot (eexp, cexp), s (LPARENleft, cexpright)) |
319 | eexp MINUSMINUS cexp (ECut (eexp, cexp), s (eexpleft, cexpright)) | 319 | eexp MINUSMINUS cexp (ECut (eexp, cexp), s (eexpleft, cexpright)) |
320 | CASE eexp OF barOpt branch branchs (ECase (eexp, branch :: branchs), s (CASEleft, branchsright)) | 320 | CASE eexp OF barOpt branch branchs (ECase (eexp, branch :: branchs), s (CASEleft, branchsright)) |
321 | IF eexp THEN eexp ELSE eexp (let | |
322 val loc = s (IFleft, eexp3right) | |
323 in | |
324 (ECase (eexp1, [((PCon (["Basis"], "True", NONE), loc), eexp2), | |
325 ((PCon (["Basis"], "False", NONE), loc), eexp3)]), loc) | |
326 end) | |
321 | 327 |
322 eterm : LPAREN eexp RPAREN (#1 eexp, s (LPARENleft, RPARENright)) | 328 eterm : LPAREN eexp RPAREN (#1 eexp, s (LPARENleft, RPARENright)) |
323 | 329 |
324 | path (EVar path, s (pathleft, pathright)) | 330 | path (EVar path, s (pathleft, pathright)) |
325 | cpath (EVar cpath, s (cpathleft, cpathright)) | 331 | cpath (EVar cpath, s (cpathleft, cpathright)) |