comparison src/urweb.grm @ 674:fab5998b840e

Type class reductions, but no inclusions yet
author Adam Chlipala <adamc@hcoop.net>
date Thu, 26 Mar 2009 14:37:31 -0400
parents 6c4643880df5
children 500e93aa436f
comparison
equal deleted inserted replaced
673:a8effb6159c2 674:fab5998b840e
186 | PLUS | MINUS | DIVIDE | DOTDOTDOT | MOD | AT 186 | PLUS | MINUS | DIVIDE | DOTDOTDOT | MOD | AT
187 | CON | LTYPE | VAL | REC | AND | FUN | MAP | UNIT | KUNIT | CLASS 187 | CON | LTYPE | VAL | REC | AND | FUN | MAP | UNIT | KUNIT | CLASS
188 | DATATYPE | OF 188 | DATATYPE | OF
189 | TYPE | NAME 189 | TYPE | NAME
190 | ARROW | LARROW | DARROW | STAR | SEMI | KARROW | DKARROW | BANG 190 | ARROW | LARROW | DARROW | STAR | SEMI | KARROW | DKARROW | BANG
191 | FN | PLUSPLUS | MINUSMINUS | MINUSMINUSMINUS | DOLLAR | TWIDDLE 191 | FN | PLUSPLUS | MINUSMINUS | MINUSMINUSMINUS | DOLLAR | TWIDDLE | CARET
192 | LET | IN 192 | LET | IN
193 | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | EXTERN | SQL 193 | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | EXTERN | SQL
194 | INCLUDE | OPEN | CONSTRAINT | CONSTRAINTS | EXPORT | TABLE | SEQUENCE 194 | INCLUDE | OPEN | CONSTRAINT | CONSTRAINTS | EXPORT | TABLE | SEQUENCE
195 | COOKIE 195 | COOKIE
196 | CASE | IF | THEN | ELSE 196 | CASE | IF | THEN | ELSE
339 %right COMMA 339 %right COMMA
340 %right OR 340 %right OR
341 %right CAND 341 %right CAND
342 %nonassoc EQ NE LT LE GT GE IS 342 %nonassoc EQ NE LT LE GT GE IS
343 %right ARROW 343 %right ARROW
344 %right PLUSPLUS MINUSMINUS MINUSMINUSMINUS 344 %right CARET PLUSPLUS MINUSMINUS MINUSMINUSMINUS
345 %left PLUS MINUS 345 %left PLUS MINUS
346 %left STAR DIVIDE MOD 346 %left STAR DIVIDE MOD
347 %left NOT 347 %left NOT
348 %nonassoc TWIDDLE 348 %nonassoc TWIDDLE
349 %nonassoc DOLLAR 349 %nonassoc DOLLAR
750 | eexp LE eexp (native_op ("le", eexp1, eexp2, s (eexp1left, eexp2right))) 750 | eexp LE eexp (native_op ("le", eexp1, eexp2, s (eexp1left, eexp2right)))
751 | eexp GT eexp (native_op ("gt", eexp1, eexp2, s (eexp1left, eexp2right))) 751 | eexp GT eexp (native_op ("gt", eexp1, eexp2, s (eexp1left, eexp2right)))
752 | eexp GE eexp (native_op ("ge", eexp1, eexp2, s (eexp1left, eexp2right))) 752 | eexp GE eexp (native_op ("ge", eexp1, eexp2, s (eexp1left, eexp2right)))
753 753
754 | eexp PLUSPLUS eexp (EConcat (eexp1, eexp2), s (eexp1left, eexp2right)) 754 | eexp PLUSPLUS eexp (EConcat (eexp1, eexp2), s (eexp1left, eexp2right))
755
756 | eexp CARET eexp (native_op ("strcat", eexp1, eexp2, s (eexp1left, eexp2right)))
755 757
756 bind : SYMBOL LARROW eapps (SYMBOL, NONE, eapps) 758 bind : SYMBOL LARROW eapps (SYMBOL, NONE, eapps)
757 | UNIT LARROW eapps (let 759 | UNIT LARROW eapps (let
758 val loc = s (UNITleft, eappsright) 760 val loc = s (UNITleft, eappsright)
759 in 761 in