comparison src/urweb.grm @ 621:8998114760c1

"Hello world" compiles, after replacing type-level fold with map
author Adam Chlipala <adamc@hcoop.net>
date Sat, 21 Feb 2009 15:33:20 -0500
parents 44958d74c43f
children 588b9d16b00a
comparison
equal deleted inserted replaced
620:d828b143e147 621:8998114760c1
182 | STRING of string | INT of Int64.int | FLOAT of Real64.real 182 | STRING of string | INT of Int64.int | FLOAT of Real64.real
183 | SYMBOL of string | CSYMBOL of string 183 | SYMBOL of string | CSYMBOL of string
184 | LPAREN | RPAREN | LBRACK | RBRACK | LBRACE | RBRACE 184 | LPAREN | RPAREN | LBRACK | RBRACK | LBRACE | RBRACE
185 | EQ | COMMA | COLON | DCOLON | TCOLON | DOT | HASH | UNDER | UNDERUNDER | BAR 185 | EQ | COMMA | COLON | DCOLON | TCOLON | DOT | HASH | UNDER | UNDERUNDER | BAR
186 | PLUS | MINUS | DIVIDE | DOTDOTDOT | MOD | AT 186 | PLUS | MINUS | DIVIDE | DOTDOTDOT | MOD | AT
187 | CON | LTYPE | VAL | REC | AND | FUN | FOLD | UNIT | KUNIT | CLASS 187 | CON | LTYPE | VAL | REC | AND | FUN | MAP | FOLD | UNIT | KUNIT | CLASS
188 | DATATYPE | OF 188 | DATATYPE | OF
189 | TYPE | NAME 189 | TYPE | NAME
190 | ARROW | LARROW | DARROW | STAR | SEMI 190 | ARROW | LARROW | DARROW | STAR | SEMI
191 | FN | PLUSPLUS | MINUSMINUS | MINUSMINUSMINUS | DOLLAR | TWIDDLE 191 | FN | PLUSPLUS | MINUSMINUS | MINUSMINUSMINUS | DOLLAR | TWIDDLE
192 | LET | IN 192 | LET | IN
679 679
680 | path (CVar path, s (pathleft, pathright)) 680 | path (CVar path, s (pathleft, pathright))
681 | path DOT INT (CProj ((CVar path, s (pathleft, pathright)), Int64.toInt INT), 681 | path DOT INT (CProj ((CVar path, s (pathleft, pathright)), Int64.toInt INT),
682 s (pathleft, INTright)) 682 s (pathleft, INTright))
683 | UNDER (CWild (KWild, s (UNDERleft, UNDERright)), s (UNDERleft, UNDERright)) 683 | UNDER (CWild (KWild, s (UNDERleft, UNDERright)), s (UNDERleft, UNDERright))
684 | FOLD (CFold, s (FOLDleft, FOLDright)) 684 | MAP (CMap, s (MAPleft, MAPright))
685 | UNIT (CUnit, s (UNITleft, UNITright)) 685 | UNIT (CUnit, s (UNITleft, UNITright))
686 | LPAREN ctuplev RPAREN (CTuple ctuplev, s (LPARENleft, RPARENright)) 686 | LPAREN ctuplev RPAREN (CTuple ctuplev, s (LPARENleft, RPARENright))
687 687
688 ctuplev: cexp COMMA cexp ([cexp1, cexp2]) 688 ctuplev: cexp COMMA cexp ([cexp1, cexp2])
689 | cexp COMMA ctuplev (cexp :: ctuplev) 689 | cexp COMMA ctuplev (cexp :: ctuplev)