Mercurial > urweb
comparison src/urweb.grm @ 391:fe8f75f7e130
lt, le working for int
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Tue, 21 Oct 2008 10:56:43 -0400 |
parents | acaf9d19fbb7 |
children | 8084fa9216de |
comparison
equal
deleted
inserted
replaced
390:519366a76603 | 391:fe8f75f7e130 |
---|---|
695 | eexp PLUS eexp (native_op ("plus", eexp1, eexp2, s (eexp1left, eexp2right))) | 695 | eexp PLUS eexp (native_op ("plus", eexp1, eexp2, s (eexp1left, eexp2right))) |
696 | eexp MINUS eexp (native_op ("minus", eexp1, eexp2, s (eexp1left, eexp2right))) | 696 | eexp MINUS eexp (native_op ("minus", eexp1, eexp2, s (eexp1left, eexp2right))) |
697 | eterm STAR eexp (native_op ("times", eterm, eexp, s (etermleft, eexpright))) | 697 | eterm STAR eexp (native_op ("times", eterm, eexp, s (etermleft, eexpright))) |
698 | eexp DIVIDE eexp (native_op ("div", eexp1, eexp2, s (eexp1left, eexp2right))) | 698 | eexp DIVIDE eexp (native_op ("div", eexp1, eexp2, s (eexp1left, eexp2right))) |
699 | eexp MOD eexp (native_op ("mod", eexp1, eexp2, s (eexp1left, eexp2right))) | 699 | eexp MOD eexp (native_op ("mod", eexp1, eexp2, s (eexp1left, eexp2right))) |
700 | |
701 | eexp LT eexp (native_op ("lt", eexp1, eexp2, s (eexp1left, eexp2right))) | |
702 | eexp LE eexp (native_op ("le", eexp1, eexp2, s (eexp1left, eexp2right))) | |
703 | eexp GT eexp (native_op ("gt", eexp1, eexp2, s (eexp1left, eexp2right))) | |
704 | eexp GE eexp (native_op ("ge", eexp1, eexp2, s (eexp1left, eexp2right))) | |
705 | |
700 | eexp WITH cterm EQ eexp (EWith (eexp1, cterm, eexp2), s (eexp1left, eexp2right)) | 706 | eexp WITH cterm EQ eexp (EWith (eexp1, cterm, eexp2), s (eexp1left, eexp2right)) |
701 | 707 |
702 eargs : earg (earg) | 708 eargs : earg (earg) |
703 | eargl (eargl) | 709 | eargl (eargl) |
704 | 710 |
981 else | 987 else |
982 ErrorMsg.errorAt pos "Begin and end tags don't match."; | 988 ErrorMsg.errorAt pos "Begin and end tags don't match."; |
983 (EFold, pos)) | 989 (EFold, pos)) |
984 end) | 990 end) |
985 | LBRACE eexp RBRACE (eexp) | 991 | LBRACE eexp RBRACE (eexp) |
992 | LBRACE LBRACK eexp RBRACK RBRACE (let | |
993 val loc = s (LBRACEleft, RBRACEright) | |
994 val e = (EVar (["Top"], "txt"), loc) | |
995 val e = (EApp (e, (EWild, loc)), loc) | |
996 in | |
997 (EApp (e, eexp), loc) | |
998 end) | |
986 | 999 |
987 tag : tagHead attrs (let | 1000 tag : tagHead attrs (let |
988 val pos = s (tagHeadleft, attrsright) | 1001 val pos = s (tagHeadleft, attrsright) |
989 in | 1002 in |
990 (#1 tagHead, | 1003 (#1 tagHead, |