Mercurial > urweb
comparison src/lacweb.grm @ 82:b4f2a258e52c
Initial disjointness prover
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Tue, 01 Jul 2008 10:55:38 -0400 |
parents | 6431b315a1e3 |
children | 0a1baddd8ab2 |
comparison
equal
deleted
inserted
replaced
81:60d97de1bbe8 | 82:b4f2a258e52c |
---|---|
38 EOF | 38 EOF |
39 | STRING of string | INT of Int64.int | FLOAT of Real64.real | 39 | STRING of string | INT of Int64.int | FLOAT of Real64.real |
40 | SYMBOL of string | CSYMBOL of string | 40 | SYMBOL of string | CSYMBOL of string |
41 | LPAREN | RPAREN | LBRACK | RBRACK | LBRACE | RBRACE | 41 | LPAREN | RPAREN | LBRACK | RBRACK | LBRACE | RBRACE |
42 | EQ | COMMA | COLON | DCOLON | TCOLON | DOT | HASH | UNDER | UNDERUNDER | 42 | EQ | COMMA | COLON | DCOLON | TCOLON | DOT | HASH | UNDER | UNDERUNDER |
43 | CON | LTYPE | VAL | FOLD | 43 | CON | LTYPE | VAL | FOLD | UNIT | KUNIT |
44 | TYPE | NAME | 44 | TYPE | NAME |
45 | ARROW | LARROW | DARROW | 45 | ARROW | LARROW | DARROW |
46 | FN | PLUSPLUS | DOLLAR | 46 | FN | PLUSPLUS | DOLLAR |
47 | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | EXTERN | INCLUDE | OPEN | 47 | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | EXTERN | INCLUDE | OPEN |
48 | 48 |
177 kind : TYPE (KType, s (TYPEleft, TYPEright)) | 177 kind : TYPE (KType, s (TYPEleft, TYPEright)) |
178 | NAME (KName, s (NAMEleft, NAMEright)) | 178 | NAME (KName, s (NAMEleft, NAMEright)) |
179 | LBRACE kind RBRACE (KRecord kind, s (LBRACEleft, RBRACEright)) | 179 | LBRACE kind RBRACE (KRecord kind, s (LBRACEleft, RBRACEright)) |
180 | kind ARROW kind (KArrow (kind1, kind2), s (kind1left, kind2right)) | 180 | kind ARROW kind (KArrow (kind1, kind2), s (kind1left, kind2right)) |
181 | LPAREN kind RPAREN (#1 kind, s (LPARENleft, RPARENright)) | 181 | LPAREN kind RPAREN (#1 kind, s (LPARENleft, RPARENright)) |
182 | KUNIT (KUnit, s (KUNITleft, KUNITright)) | |
182 | UNDERUNDER (KWild, s (UNDERUNDERleft, UNDERUNDERright)) | 183 | UNDERUNDER (KWild, s (UNDERUNDERleft, UNDERUNDERright)) |
183 | 184 |
184 capps : cterm (cterm) | 185 capps : cterm (cterm) |
185 | capps cterm (CApp (capps, cterm), s (cappsleft, ctermright)) | 186 | capps cterm (CApp (capps, cterm), s (cappsleft, ctermright)) |
186 | 187 |
214 | HASH CSYMBOL (CName CSYMBOL, s (HASHleft, CSYMBOLright)) | 215 | HASH CSYMBOL (CName CSYMBOL, s (HASHleft, CSYMBOLright)) |
215 | 216 |
216 | path (CVar path, s (pathleft, pathright)) | 217 | path (CVar path, s (pathleft, pathright)) |
217 | UNDER (CWild (KWild, s (UNDERleft, UNDERright)), s (UNDERleft, UNDERright)) | 218 | UNDER (CWild (KWild, s (UNDERleft, UNDERright)), s (UNDERleft, UNDERright)) |
218 | FOLD (CFold, s (FOLDleft, FOLDright)) | 219 | FOLD (CFold, s (FOLDleft, FOLDright)) |
220 | UNIT (CUnit, s (UNITleft, UNITright)) | |
219 | 221 |
220 rcon : ([]) | 222 rcon : ([]) |
221 | ident EQ cexp ([(ident, cexp)]) | 223 | ident EQ cexp ([(ident, cexp)]) |
222 | ident EQ cexp COMMA rcon ((ident, cexp) :: rcon) | 224 | ident EQ cexp COMMA rcon ((ident, cexp) :: rcon) |
223 | 225 |