diff options
| author | bringert <bringert@cs.chalmers.se> | 2006-03-03 10:34:15 +0000 |
|---|---|---|
| committer | bringert <bringert@cs.chalmers.se> | 2006-03-03 10:34:15 +0000 |
| commit | 145e0a4c8212a32c669d14cb67a615add5f0ad56 (patch) | |
| tree | de7f434b833254fb1c0dbb388833f77fa7acf43a /src/Transfer/Core | |
| parent | 6c5763615fc3e2c5fb40b15daec39d301a0a9a18 (diff) | |
Transfer: Removed PType from source and core languages.
Diffstat (limited to 'src/Transfer/Core')
| -rw-r--r-- | src/Transfer/Core/Abs.hs | 55 | ||||
| -rw-r--r-- | src/Transfer/Core/Core.cf | 2 | ||||
| -rw-r--r-- | src/Transfer/Core/Doc.tex | 1 | ||||
| -rw-r--r-- | src/Transfer/Core/Lex.hs | 2 | ||||
| -rw-r--r-- | src/Transfer/Core/Lex.x | 4 | ||||
| -rw-r--r-- | src/Transfer/Core/Par.hs | 193 | ||||
| -rw-r--r-- | src/Transfer/Core/Par.y | 1 | ||||
| -rw-r--r-- | src/Transfer/Core/Print.hs | 1 | ||||
| -rw-r--r-- | src/Transfer/Core/Skel.hs | 2 |
9 files changed, 121 insertions, 140 deletions
diff --git a/src/Transfer/Core/Abs.hs b/src/Transfer/Core/Abs.hs index fd6a382b1..8e4de4057 100644 --- a/src/Transfer/Core/Abs.hs +++ b/src/Transfer/Core/Abs.hs @@ -43,7 +43,6 @@ data Tree :: * -> * where PCons :: CIdent -> [Pattern] -> Tree Pattern_ PVar :: PatternVariable -> Tree Pattern_ PRec :: [FieldPattern] -> Tree Pattern_ - PType :: Tree Pattern_ PStr :: String -> Tree Pattern_ PInt :: Integer -> Tree Pattern_ FieldPattern :: CIdent -> Pattern -> Tree FieldPattern_ @@ -129,7 +128,6 @@ instance Show (Tree c) where PCons cident patterns -> opar n . showString "PCons" . showChar ' ' . showsPrec 1 cident . showChar ' ' . showsPrec 1 patterns . cpar n PVar patternvariable -> opar n . showString "PVar" . showChar ' ' . showsPrec 1 patternvariable . cpar n PRec fieldpatterns -> opar n . showString "PRec" . showChar ' ' . showsPrec 1 fieldpatterns . cpar n - PType -> showString "PType" PStr str -> opar n . showString "PStr" . showChar ' ' . showsPrec 1 str . cpar n PInt n -> opar n . showString "PInt" . showChar ' ' . showsPrec 1 n . cpar n FieldPattern cident pattern -> opar n . showString "FieldPattern" . showChar ' ' . showsPrec 1 cident . showChar ' ' . showsPrec 1 pattern . cpar n @@ -169,7 +167,6 @@ johnMajorEq (ConsDecl cident exp) (ConsDecl cident_ exp_) = cident == cident_ && johnMajorEq (PCons cident patterns) (PCons cident_ patterns_) = cident == cident_ && patterns == patterns_ johnMajorEq (PVar patternvariable) (PVar patternvariable_) = patternvariable == patternvariable_ johnMajorEq (PRec fieldpatterns) (PRec fieldpatterns_) = fieldpatterns == fieldpatterns_ -johnMajorEq PType PType = True johnMajorEq (PStr str) (PStr str_) = str == str_ johnMajorEq (PInt n) (PInt n_) = n == n_ johnMajorEq (FieldPattern cident pattern) (FieldPattern cident_ pattern_) = cident == cident_ && pattern == pattern_ @@ -208,32 +205,31 @@ instance Ord (Tree c) where index (PCons _ _) = 5 index (PVar _) = 6 index (PRec _) = 7 - index (PType ) = 8 - index (PStr _) = 9 - index (PInt _) = 10 - index (FieldPattern _ _) = 11 - index (PVVar _) = 12 - index (PVWild ) = 13 - index (ELet _ _) = 14 - index (ECase _ _) = 15 - index (EAbs _ _) = 16 - index (EPi _ _ _) = 17 - index (EApp _ _) = 18 - index (EProj _ _) = 19 - index (ERecType _) = 20 - index (ERec _) = 21 - index (EVar _) = 22 - index (EType ) = 23 - index (EStr _) = 24 - index (EInteger _) = 25 - index (EDouble _) = 26 - index (EMeta _) = 27 - index (LetDef _ _) = 28 - index (Case _ _ _) = 29 - index (FieldType _ _) = 30 - index (FieldValue _ _) = 31 - index (TMeta _) = 32 - index (CIdent _) = 33 + index (PStr _) = 8 + index (PInt _) = 9 + index (FieldPattern _ _) = 10 + index (PVVar _) = 11 + index (PVWild ) = 12 + index (ELet _ _) = 13 + index (ECase _ _) = 14 + index (EAbs _ _) = 15 + index (EPi _ _ _) = 16 + index (EApp _ _) = 17 + index (EProj _ _) = 18 + index (ERecType _) = 19 + index (ERec _) = 20 + index (EVar _) = 21 + index (EType ) = 22 + index (EStr _) = 23 + index (EInteger _) = 24 + index (EDouble _) = 25 + index (EMeta _) = 26 + index (LetDef _ _) = 27 + index (Case _ _ _) = 28 + index (FieldType _ _) = 29 + index (FieldValue _ _) = 30 + index (TMeta _) = 31 + index (CIdent _) = 32 compareSame (Module decls) (Module decls_) = compare decls decls_ compareSame (DataDecl cident exp consdecls) (DataDecl cident_ exp_ consdecls_) = mappend (compare cident cident_) (mappend (compare exp exp_) (compare consdecls consdecls_)) compareSame (TypeDecl cident exp) (TypeDecl cident_ exp_) = mappend (compare cident cident_) (compare exp exp_) @@ -242,7 +238,6 @@ instance Ord (Tree c) where compareSame (PCons cident patterns) (PCons cident_ patterns_) = mappend (compare cident cident_) (compare patterns patterns_) compareSame (PVar patternvariable) (PVar patternvariable_) = compare patternvariable patternvariable_ compareSame (PRec fieldpatterns) (PRec fieldpatterns_) = compare fieldpatterns fieldpatterns_ - compareSame PType PType = EQ compareSame (PStr str) (PStr str_) = compare str str_ compareSame (PInt n) (PInt n_) = compare n n_ compareSame (FieldPattern cident pattern) (FieldPattern cident_ pattern_) = mappend (compare cident cident_) (compare pattern pattern_) diff --git a/src/Transfer/Core/Core.cf b/src/Transfer/Core/Core.cf index e0fc7e0f5..cd4c20569 100644 --- a/src/Transfer/Core/Core.cf +++ b/src/Transfer/Core/Core.cf @@ -25,8 +25,6 @@ PCons. Pattern ::= "(" CIdent [Pattern] ")" ; PVar. Pattern ::= PatternVariable ; -- Record patterns. PRec. Pattern ::= "rec" "{" [FieldPattern] "}"; --- Patterns matching the constant Type. -PType. Pattern ::= "Type" ; -- String literal patterns. PStr. Pattern ::= String ; -- Integer literal patterns. diff --git a/src/Transfer/Core/Doc.tex b/src/Transfer/Core/Doc.tex index 0b197ea63..4ba6f93ed 100644 --- a/src/Transfer/Core/Doc.tex +++ b/src/Transfer/Core/Doc.tex @@ -112,7 +112,6 @@ All other symbols are terminals.\\ {\nonterminal{Pattern}} & {\arrow} &{\terminal{(}} {\nonterminal{CIdent}} {\nonterminal{ListPattern}} {\terminal{)}} \\ & {\delimit} &{\nonterminal{PatternVariable}} \\ & {\delimit} &{\terminal{rec}} {\terminal{\{}} {\nonterminal{ListFieldPattern}} {\terminal{\}}} \\ - & {\delimit} &{\terminal{Type}} \\ & {\delimit} &{\nonterminal{String}} \\ & {\delimit} &{\nonterminal{Integer}} \\ \end{tabular}\\ diff --git a/src/Transfer/Core/Lex.hs b/src/Transfer/Core/Lex.hs index fd3d399c4..dba4b522b 100644 --- a/src/Transfer/Core/Lex.hs +++ b/src/Transfer/Core/Lex.hs @@ -44,7 +44,7 @@ share :: String -> String share = id data Tok = - TS !String -- reserved words + TS !String -- reserved words and symbols | TL !String -- string literals | TI !String -- integer literals | TV !String -- identifiers diff --git a/src/Transfer/Core/Lex.x b/src/Transfer/Core/Lex.x index ed07c70bd..92fb9bdae 100644 --- a/src/Transfer/Core/Lex.x +++ b/src/Transfer/Core/Lex.x @@ -15,7 +15,7 @@ $d = [0-9] -- digit $i = [$l $d _ '] -- identifier character $u = [\0-\255] -- universal: any character -@rsyms = -- reserved words consisting of special symbols +@rsyms = -- symbols and non-identifier-like reserved words \; | \: | \{ | \} | \= | \( | \) | \_ | \| | \- \> | \\ | \. :- @@ -41,7 +41,7 @@ share :: String -> String share = id data Tok = - TS !String -- reserved words + TS !String -- reserved words and symbols | TL !String -- string literals | TI !String -- integer literals | TV !String -- identifiers diff --git a/src/Transfer/Core/Par.hs b/src/Transfer/Core/Par.hs index 0bd05b4b0..3dfbb8b03 100644 --- a/src/Transfer/Core/Par.hs +++ b/src/Transfer/Core/Par.hs @@ -195,21 +195,21 @@ happyOutTok x = unsafeCoerce# x {-# INLINE happyOutTok #-} happyActOffsets :: HappyAddr -happyActOffsets = HappyA# "\x15\x00\x5f\x01\xcd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\x00\x00\x00\x7c\x01\xde\x00\x00\x00\x00\x00\x4a\x01\x09\x00\x00\x00\x5f\x01\xdf\x00\xd7\x00\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\xbc\x00\x00\x00\xd1\x00\xc7\x00\xcf\x00\x15\x00\x5f\x01\x5f\x01\xc6\x00\xc6\x00\xc6\x00\xbe\x00\x00\x00\xc5\x00\x00\x00\x74\x01\xcb\x00\xc0\x00\xac\x00\xb9\x00\x5f\x01\x00\x00\x00\x00\x5f\x01\x5f\x01\xc1\x00\xb8\x00\xbb\x00\xb7\x00\xb5\x00\xb3\x00\xaf\x00\xb0\x00\xa9\x00\x9d\x00\x00\x00\x00\x00\x00\x00\x5f\x01\x94\x00\x00\x00\x86\x00\x5f\x01\x00\x00\x86\x00\x5f\x01\x8f\x00\x84\x00\x5f\x01\x99\x01\x00\x00\x90\x00\x8b\x00\x00\x00\x00\x00\x8d\x00\x00\x00\x8c\x00\x8a\x00\x7a\x00\x00\x00\x89\x00\x00\x00\x00\x00\x5f\x01\x00\x00\x00\x00\x00\x00\x00\x00\x81\x00\x69\x00\x00\x00\x69\x00\x00\x00\x00\x00\x99\x01\x5f\x01\x5f\x01\x00\x00\x71\x00\x00\x00\x91\x01\x75\x00\x78\x00\x74\x00\x6d\x00\x65\x00\x5c\x00\x00\x00\x43\x00\x5f\x01\x00\x00\x43\x00\x99\x01\x00\x00\x00\x00\x5f\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# +happyActOffsets = HappyA# "\x15\x00\x5f\x01\xcd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\x00\x00\x00\x7c\x01\xde\x00\x00\x00\x00\x00\x4a\x01\x09\x00\x00\x00\x5f\x01\xdf\x00\xd7\x00\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\xbc\x00\x00\x00\xd1\x00\xc7\x00\xcf\x00\x15\x00\x5f\x01\x5f\x01\xc6\x00\xc6\x00\xc6\x00\xbe\x00\x00\x00\xc5\x00\x00\x00\x74\x01\xcb\x00\xc0\x00\xac\x00\xb9\x00\x5f\x01\x00\x00\x00\x00\x5f\x01\x5f\x01\xc1\x00\xb8\x00\xbb\x00\xb7\x00\xb5\x00\xb3\x00\xaf\x00\xb0\x00\xa9\x00\x9d\x00\x00\x00\x00\x00\x00\x00\x5f\x01\x94\x00\x00\x00\x86\x00\x5f\x01\x00\x00\x86\x00\x5f\x01\x8f\x00\x84\x00\x5f\x01\x96\x01\x00\x00\x90\x00\x8b\x00\x00\x00\x00\x00\x8d\x00\x00\x00\x8c\x00\x8a\x00\x7a\x00\x89\x00\x00\x00\x00\x00\x5f\x01\x00\x00\x00\x00\x00\x00\x00\x00\x81\x00\x69\x00\x00\x00\x69\x00\x00\x00\x00\x00\x96\x01\x5f\x01\x5f\x01\x00\x00\x71\x00\x00\x00\x91\x01\x75\x00\x78\x00\x74\x00\x6d\x00\x65\x00\x5c\x00\x00\x00\x43\x00\x5f\x01\x00\x00\x43\x00\x96\x01\x00\x00\x00\x00\x5f\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# happyGotoOffsets :: HappyAddr -happyGotoOffsets = HappyA# "\x4e\x00\x31\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x01\x00\x00\x00\x00\x00\x00\x01\x00\x04\x00\x00\x00\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x45\x00\x00\x00\x6a\x00\x0b\x01\xee\x00\x28\x00\x44\x00\x57\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\xe5\x00\x00\x00\x00\x00\xc8\x00\xbf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x00\x00\x00\x00\x02\x00\x99\x00\x00\x00\x1e\x00\x7c\x00\x00\x00\x03\x00\x73\x00\xb5\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x56\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x00\x00\x3e\x00\xff\xff\x00\x00\xa9\x01\x4d\x00\x30\x00\x00\x00\x00\x00\x00\x00\xbe\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x27\x00\x00\x00\x21\x00\x3e\x01\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# +happyGotoOffsets = HappyA# "\x4e\x00\x31\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x01\x00\x00\x00\x00\x00\x00\x01\x00\x04\x00\x00\x00\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x45\x00\x00\x00\x6a\x00\x0b\x01\xee\x00\x28\x00\x44\x00\x57\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\xe5\x00\x00\x00\x00\x00\xc8\x00\xbf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x00\x00\x00\x00\x02\x00\x99\x00\x00\x00\x1e\x00\x7c\x00\x00\x00\x03\x00\x73\x00\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x56\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x00\x00\x3e\x00\xff\xff\x00\x00\xae\x01\x4d\x00\x30\x00\x00\x00\x00\x00\x00\x00\xba\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x27\x00\x00\x00\x21\x00\x3e\x01\x00\x00\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# happyDefActions :: HappyAddr -happyDefActions = HappyA# "\xf7\xff\x00\x00\x00\x00\xfd\xff\xc9\xff\xc8\xff\xc7\xff\xc6\xff\xcb\xff\x00\x00\xdd\xff\xbc\xff\xd0\xff\xce\xff\xd2\xff\x00\x00\x00\x00\xca\xff\x00\x00\x00\x00\x00\x00\x00\x00\xfc\xff\xfb\xff\xfa\xff\xf9\xff\x00\x00\x00\x00\xf8\xff\xf6\xff\x00\x00\x00\x00\xf7\xff\x00\x00\x00\x00\xc3\xff\xbf\xff\xdb\xff\x00\x00\xe1\xff\x00\x00\xe0\xff\xe1\xff\x00\x00\x00\x00\x00\x00\xd1\xff\x00\x00\xcf\xff\xc5\xff\x00\x00\x00\x00\x00\x00\x00\x00\xda\xff\x00\x00\x00\x00\xbe\xff\x00\x00\x00\x00\xc2\xff\x00\x00\xf2\xff\xf3\xff\xf5\xff\x00\x00\x00\x00\xcd\xff\xc3\xff\x00\x00\xcc\xff\xbf\xff\x00\x00\x00\x00\xdb\xff\x00\x00\xd7\xff\xd4\xff\x00\x00\x00\x00\xe7\xff\xe6\xff\x00\x00\xea\xff\xd6\xff\x00\x00\x00\x00\xe8\xff\x00\x00\xdc\xff\xd9\xff\x00\x00\xc0\xff\xbd\xff\xc4\xff\xc1\xff\x00\x00\xf0\xff\xdf\xff\xe4\xff\xed\xff\xde\xff\xd7\xff\x00\x00\x00\x00\xd3\xff\x00\x00\xd5\xff\x00\x00\x00\x00\xe3\xff\x00\x00\x00\x00\xef\xff\x00\x00\xf4\xff\xf0\xff\x00\x00\xe9\xff\xe4\xff\x00\x00\xec\xff\xeb\xff\x00\x00\xd8\xff\xe5\xff\xe2\xff\xf1\xff\xee\xff"# +happyDefActions = HappyA# "\xf7\xff\x00\x00\x00\x00\xfd\xff\xca\xff\xc9\xff\xc8\xff\xc7\xff\xcc\xff\x00\x00\xde\xff\xbd\xff\xd1\xff\xcf\xff\xd3\xff\x00\x00\x00\x00\xcb\xff\x00\x00\x00\x00\x00\x00\x00\x00\xfc\xff\xfb\xff\xfa\xff\xf9\xff\x00\x00\x00\x00\xf8\xff\xf6\xff\x00\x00\x00\x00\xf7\xff\x00\x00\x00\x00\xc4\xff\xc0\xff\xdc\xff\x00\x00\xe2\xff\x00\x00\xe1\xff\xe2\xff\x00\x00\x00\x00\x00\x00\xd2\xff\x00\x00\xd0\xff\xc6\xff\x00\x00\x00\x00\x00\x00\x00\x00\xdb\xff\x00\x00\x00\x00\xbf\xff\x00\x00\x00\x00\xc3\xff\x00\x00\xf2\xff\xf3\xff\xf5\xff\x00\x00\x00\x00\xce\xff\xc4\xff\x00\x00\xcd\xff\xc0\xff\x00\x00\x00\x00\xdc\xff\x00\x00\xd8\xff\xd5\xff\x00\x00\x00\x00\xe8\xff\xe7\xff\x00\x00\xea\xff\xd7\xff\x00\x00\x00\x00\x00\x00\xdd\xff\xda\xff\x00\x00\xc1\xff\xbe\xff\xc5\xff\xc2\xff\x00\x00\xf0\xff\xe0\xff\xe5\xff\xed\xff\xdf\xff\xd8\xff\x00\x00\x00\x00\xd4\xff\x00\x00\xd6\xff\x00\x00\x00\x00\xe4\xff\x00\x00\x00\x00\xef\xff\x00\x00\xf4\xff\xf0\xff\x00\x00\xe9\xff\xe5\xff\x00\x00\xec\xff\xeb\xff\x00\x00\xd9\xff\xe6\xff\xe3\xff\xf1\xff\xee\xff"# happyCheck :: HappyAddr -happyCheck = HappyA# "\xff\xff\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x04\x00\x04\x00\x0a\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x0e\x00\x0f\x00\x08\x00\x0e\x00\x10\x00\x11\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x18\x00\x19\x00\x04\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x04\x00\x1a\x00\x0f\x00\x04\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x0c\x00\x0d\x00\x1a\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x0f\x00\x02\x00\x1a\x00\x1b\x00\x05\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x18\x00\x19\x00\x04\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x04\x00\x04\x00\x0c\x00\x0d\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x05\x00\x06\x00\x07\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x0f\x00\x1a\x00\x1a\x00\x1b\x00\x04\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x01\x00\x10\x00\x11\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x04\x00\x02\x00\x06\x00\x07\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x01\x00\x05\x00\x0a\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x0f\x00\x1a\x00\x03\x00\x08\x00\x09\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x03\x00\x01\x00\x04\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x1a\x00\x0a\x00\x09\x00\x07\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x1a\x00\x10\x00\x1a\x00\x04\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x0f\x00\x15\x00\x01\x00\x08\x00\x09\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x02\x00\x04\x00\x01\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x05\x00\x04\x00\x01\x00\x05\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x03\x00\x0c\x00\x1a\x00\x07\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x02\x00\x0f\x00\x0a\x00\x12\x00\x02\x00\x01\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x1c\x00\x03\x00\x03\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x1a\x00\x1a\x00\x03\x00\x16\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x0c\x00\xff\xff\x1c\x00\xff\xff\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x0f\x00\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\xff\xff\xff\xff\xff\xff\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\xff\xff\xff\xff\xff\xff\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x0f\x00\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\xff\xff\xff\xff\xff\xff\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\xff\xff\xff\xff\xff\xff\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x00\x00\x01\x00\x0f\x00\xff\xff\x04\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x0b\x00\xff\xff\xff\xff\x0e\x00\x1c\x00\x16\x00\x17\x00\x06\x00\xff\xff\x08\x00\xff\xff\xff\xff\x0b\x00\xff\xff\x0d\x00\x0e\x00\xff\xff\xff\xff\x11\x00\xff\xff\x13\x00\x14\x00\xff\xff\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x06\x00\xff\xff\xff\xff\xff\xff\xff\xff\x0b\x00\xff\xff\x0d\x00\x0e\x00\xff\xff\xff\xff\x11\x00\xff\xff\x13\x00\x14\x00\xff\xff\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\x0c\x00\x0d\x00\x06\x00\xff\xff\xff\xff\xff\xff\xff\xff\x13\x00\x14\x00\x0d\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x13\x00\x14\x00\xff\xff\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x06\x00\x07\x00\x08\x00\xff\xff\xff\xff\xff\xff\xff\xff\x0d\x00\x06\x00\xff\xff\x08\x00\xff\xff\xff\xff\x13\x00\xff\xff\x0d\x00\x16\x00\x17\x00\x00\x00\x01\x00\x1a\x00\x13\x00\x04\x00\xff\xff\x16\x00\x17\x00\xff\xff\xff\xff\x1a\x00\x0b\x00\x00\x00\x01\x00\x0e\x00\xff\xff\x04\x00\xff\xff\x12\x00\x13\x00\xff\xff\x00\x00\x01\x00\x0b\x00\xff\xff\x04\x00\x0e\x00\xff\xff\xff\xff\xff\xff\x12\x00\x13\x00\x0b\x00\xff\xff\xff\xff\x0e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"# +happyCheck = HappyA# "\xff\xff\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x04\x00\x04\x00\x0a\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x0e\x00\x0f\x00\x08\x00\x0e\x00\x10\x00\x11\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x18\x00\x19\x00\x04\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x04\x00\x1a\x00\x0f\x00\x04\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x0c\x00\x0d\x00\x1a\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x0f\x00\x02\x00\x1a\x00\x1b\x00\x05\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x18\x00\x19\x00\x04\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x04\x00\x04\x00\x0c\x00\x0d\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x05\x00\x06\x00\x07\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x0f\x00\x1a\x00\x1a\x00\x1b\x00\x04\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x01\x00\x10\x00\x11\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x04\x00\x02\x00\x06\x00\x07\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x01\x00\x05\x00\x0a\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x0f\x00\x1a\x00\x03\x00\x08\x00\x09\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x03\x00\x01\x00\x04\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x1a\x00\x0a\x00\x09\x00\x07\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x1a\x00\x10\x00\x1a\x00\x04\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x0f\x00\x15\x00\x01\x00\x08\x00\x09\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x02\x00\x04\x00\x01\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x05\x00\x04\x00\x01\x00\x05\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x03\x00\x0c\x00\x1a\x00\x07\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x02\x00\x0f\x00\x0a\x00\x12\x00\x02\x00\x01\x00\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\x1c\x00\x03\x00\x03\x00\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\x1a\x00\x1a\x00\x03\x00\x16\x00\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x0c\x00\xff\xff\x1c\x00\xff\xff\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x0f\x00\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\xff\xff\xff\xff\xff\xff\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\xff\xff\xff\xff\xff\xff\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x0f\x00\xff\xff\xff\xff\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x0f\x00\xff\xff\xff\xff\xff\xff\x1c\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\xff\xff\xff\xff\xff\xff\x1c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x00\x00\x01\x00\x0f\x00\xff\xff\x04\x00\xff\xff\xff\xff\x14\x00\x15\x00\x16\x00\x17\x00\x0b\x00\xff\xff\xff\xff\x0e\x00\x1c\x00\x16\x00\x17\x00\x06\x00\xff\xff\x08\x00\xff\xff\xff\xff\x0b\x00\xff\xff\x0d\x00\x0e\x00\xff\xff\xff\xff\x11\x00\xff\xff\x13\x00\x14\x00\xff\xff\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x06\x00\xff\xff\xff\xff\xff\xff\xff\xff\x0b\x00\xff\xff\x0d\x00\x0e\x00\xff\xff\xff\xff\x11\x00\xff\xff\x13\x00\x14\x00\xff\xff\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\x0c\x00\x0d\x00\x06\x00\xff\xff\xff\xff\xff\xff\xff\xff\x13\x00\x14\x00\x0d\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x13\x00\x14\x00\xff\xff\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x06\x00\x07\x00\x08\x00\xff\xff\xff\xff\x06\x00\xff\xff\x08\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x13\x00\xff\xff\xff\xff\x16\x00\x17\x00\x13\x00\xff\xff\x1a\x00\x16\x00\x17\x00\x00\x00\x01\x00\x1a\x00\xff\xff\x04\x00\xff\xff\x00\x00\x01\x00\xff\xff\xff\xff\x04\x00\x0b\x00\x00\x00\x01\x00\x0e\x00\xff\xff\x04\x00\x0b\x00\x12\x00\x13\x00\x0e\x00\xff\xff\xff\xff\x0b\x00\x12\x00\x13\x00\x0e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"# happyTable :: HappyAddr -happyTable = HappyA# "\x00\x00\x04\x00\x05\x00\x06\x00\x07\x00\x2a\x00\x3b\x00\x35\x00\x27\x00\x6c\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x2b\x00\x2c\x00\x2a\x00\x28\x00\x36\x00\x5a\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x7c\x00\x3c\x00\x5f\x00\x64\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x38\x00\x1a\x00\x1f\x00\x6d\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x3b\x00\x6e\x00\x7e\x00\x1a\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x30\x00\x7f\x00\x22\x00\x39\x00\x5d\x00\x23\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x69\x00\x3c\x00\x3d\x00\x6d\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x38\x00\x1f\x00\x6e\x00\x6f\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x35\x00\x6a\x00\x1a\x00\x39\x00\x3a\x00\x74\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x62\x00\x75\x00\x36\x00\x37\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x1a\x00\x76\x00\x40\x00\x1d\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x77\x00\x78\x00\x79\x00\x7c\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x70\x00\x59\x00\x1a\x00\x62\x00\x71\x00\x80\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x5c\x00\x64\x00\x67\x00\x66\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x1a\x00\x69\x00\x68\x00\x50\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x1a\x00\x5c\x00\x1a\x00\x44\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x70\x00\x5e\x00\x61\x00\x45\x00\x71\x00\x72\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x42\x00\x46\x00\x47\x00\x48\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x4d\x00\x2e\x00\x1a\x00\x32\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x33\x00\x4d\x00\x34\x00\x35\x00\x42\x00\x21\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x4e\x00\xff\xff\x24\x00\x25\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x1a\x00\x1a\x00\x26\x00\x04\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x2e\x00\x00\x00\xff\xff\x00\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x00\x00\x2c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x00\x00\x3f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x26\x00\x00\x00\x00\x00\x00\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x00\x00\x00\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x00\x00\x50\x00\x51\x00\x09\x00\x00\x00\x27\x00\x00\x00\x00\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x7d\x00\x00\x00\x00\x00\x53\x00\x0e\x00\x2e\x00\x0d\x00\x10\x00\x00\x00\x2a\x00\x00\x00\x00\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x14\x00\x00\x00\x15\x00\x16\x00\x00\x00\x04\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x14\x00\x00\x00\x15\x00\x16\x00\x00\x00\x04\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xcb\xff\xcb\xff\x00\x00\x00\x00\x00\x00\x00\x00\xcb\xff\xcb\xff\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcb\xff\xcb\xff\x12\x00\xcb\xff\xcb\xff\xcb\xff\xcb\xff\xcb\xff\x15\x00\x16\x00\x00\x00\x04\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x57\x00\x7b\x00\x2a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x57\x00\x00\x00\x2a\x00\x00\x00\x00\x00\x59\x00\x00\x00\x58\x00\x04\x00\x17\x00\x50\x00\x51\x00\x1a\x00\x59\x00\x27\x00\x00\x00\x04\x00\x17\x00\x00\x00\x00\x00\x1a\x00\x52\x00\x50\x00\x51\x00\x53\x00\x00\x00\x27\x00\x00\x00\x54\x00\x6b\x00\x00\x00\x50\x00\x51\x00\x52\x00\x00\x00\x27\x00\x53\x00\x00\x00\x00\x00\x00\x00\x54\x00\x55\x00\x79\x00\x00\x00\x00\x00\x53\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# +happyTable = HappyA# "\x00\x00\x04\x00\x05\x00\x06\x00\x07\x00\x2a\x00\x3b\x00\x35\x00\x27\x00\x6b\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x2b\x00\x2c\x00\x2a\x00\x28\x00\x36\x00\x59\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x7b\x00\x3c\x00\x5e\x00\x63\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x38\x00\x1a\x00\x1f\x00\x6c\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x3b\x00\x6d\x00\x7d\x00\x1a\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x30\x00\x7e\x00\x22\x00\x39\x00\x5c\x00\x23\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x68\x00\x3c\x00\x3d\x00\x6c\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x38\x00\x1f\x00\x6d\x00\x6e\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x35\x00\x69\x00\x1a\x00\x39\x00\x3a\x00\x73\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x61\x00\x74\x00\x36\x00\x37\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x1a\x00\x75\x00\x40\x00\x1d\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x76\x00\x77\x00\x78\x00\x7b\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x6f\x00\x58\x00\x1a\x00\x61\x00\x70\x00\x7f\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x5b\x00\x63\x00\x66\x00\x65\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x1a\x00\x68\x00\x67\x00\x50\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x1a\x00\x5b\x00\x1a\x00\x44\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x6f\x00\x5d\x00\x60\x00\x45\x00\x70\x00\x71\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x42\x00\x46\x00\x47\x00\x48\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x4d\x00\x2e\x00\x1a\x00\x32\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x33\x00\x4d\x00\x34\x00\x35\x00\x42\x00\x21\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x4e\x00\xff\xff\x24\x00\x25\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x1a\x00\x1a\x00\x26\x00\x04\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x2e\x00\x00\x00\xff\xff\x00\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x00\x00\x2c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x00\x00\x3f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x26\x00\x00\x00\x00\x00\x00\x00\x0e\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x00\x00\x00\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x00\x00\x50\x00\x51\x00\x09\x00\x00\x00\x27\x00\x00\x00\x00\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x7c\x00\x00\x00\x00\x00\x53\x00\x0e\x00\x2e\x00\x0d\x00\x10\x00\x00\x00\x2a\x00\x00\x00\x00\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x14\x00\x00\x00\x15\x00\x16\x00\x00\x00\x04\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x14\x00\x00\x00\x15\x00\x16\x00\x00\x00\x04\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xcc\xff\xcc\xff\x00\x00\x00\x00\x00\x00\x00\x00\xcc\xff\xcc\xff\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\xff\xcc\xff\x12\x00\xcc\xff\xcc\xff\xcc\xff\xcc\xff\xcc\xff\x15\x00\x16\x00\x00\x00\x04\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x57\x00\x7a\x00\x2a\x00\x00\x00\x00\x00\x57\x00\x00\x00\x2a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x58\x00\x00\x00\x00\x00\x04\x00\x17\x00\x58\x00\x00\x00\x1a\x00\x04\x00\x17\x00\x50\x00\x51\x00\x1a\x00\x00\x00\x27\x00\x00\x00\x50\x00\x51\x00\x00\x00\x00\x00\x27\x00\x52\x00\x50\x00\x51\x00\x53\x00\x00\x00\x27\x00\x52\x00\x54\x00\x6a\x00\x53\x00\x00\x00\x00\x00\x78\x00\x54\x00\x55\x00\x53\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# -happyReduceArr = array (2, 67) [ +happyReduceArr = array (2, 66) [ (2 , happyReduce_2), (3 , happyReduce_3), (4 , happyReduce_4), @@ -274,8 +274,7 @@ happyReduceArr = array (2, 67) [ (63 , happyReduce_63), (64 , happyReduce_64), (65 , happyReduce_65), - (66 , happyReduce_66), - (67 , happyReduce_67) + (66 , happyReduce_66) ] happy_n_terms = 29 :: Int @@ -460,26 +459,20 @@ happyReduction_22 (happy_x_4 `HappyStk` happyReduce_23 = happySpecReduce_1 11# happyReduction_23 happyReduction_23 happy_x_1 - = happyIn16 - (PType - ) - -happyReduce_24 = happySpecReduce_1 11# happyReduction_24 -happyReduction_24 happy_x_1 = case happyOut5 happy_x_1 of { happy_var_1 -> happyIn16 (PStr happy_var_1 )} -happyReduce_25 = happySpecReduce_1 11# happyReduction_25 -happyReduction_25 happy_x_1 +happyReduce_24 = happySpecReduce_1 11# happyReduction_24 +happyReduction_24 happy_x_1 = case happyOut6 happy_x_1 of { happy_var_1 -> happyIn16 (PInt happy_var_1 )} -happyReduce_26 = happySpecReduce_3 12# happyReduction_26 -happyReduction_26 happy_x_3 +happyReduce_25 = happySpecReduce_3 12# happyReduction_25 +happyReduction_25 happy_x_3 happy_x_2 happy_x_1 = case happyOut9 happy_x_1 of { happy_var_1 -> @@ -488,20 +481,20 @@ happyReduction_26 happy_x_3 (FieldPattern happy_var_1 happy_var_3 )}} -happyReduce_27 = happySpecReduce_0 13# happyReduction_27 -happyReduction_27 = happyIn18 +happyReduce_26 = happySpecReduce_0 13# happyReduction_26 +happyReduction_26 = happyIn18 ([] ) -happyReduce_28 = happySpecReduce_1 13# happyReduction_28 -happyReduction_28 happy_x_1 +happyReduce_27 = happySpecReduce_1 13# happyReduction_27 +happyReduction_27 happy_x_1 = case happyOut17 happy_x_1 of { happy_var_1 -> happyIn18 ((:[]) happy_var_1 )} -happyReduce_29 = happySpecReduce_3 13# happyReduction_29 -happyReduction_29 happy_x_3 +happyReduce_28 = happySpecReduce_3 13# happyReduction_28 +happyReduction_28 happy_x_3 happy_x_2 happy_x_1 = case happyOut17 happy_x_1 of { happy_var_1 -> @@ -510,21 +503,21 @@ happyReduction_29 happy_x_3 ((:) happy_var_1 happy_var_3 )}} -happyReduce_30 = happySpecReduce_1 14# happyReduction_30 -happyReduction_30 happy_x_1 +happyReduce_29 = happySpecReduce_1 14# happyReduction_29 +happyReduction_29 happy_x_1 = case happyOut9 happy_x_1 of { happy_var_1 -> happyIn19 (PVVar happy_var_1 )} -happyReduce_31 = happySpecReduce_1 14# happyReduction_31 -happyReduction_31 happy_x_1 +happyReduce_30 = happySpecReduce_1 14# happyReduction_30 +happyReduction_30 happy_x_1 = happyIn19 (PVWild ) -happyReduce_32 = happyReduce 6# 15# happyReduction_32 -happyReduction_32 (happy_x_6 `HappyStk` +happyReduce_31 = happyReduce 6# 15# happyReduction_31 +happyReduction_31 (happy_x_6 `HappyStk` happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` @@ -537,8 +530,8 @@ happyReduction_32 (happy_x_6 `HappyStk` (ELet happy_var_3 happy_var_6 ) `HappyStk` happyRest}} -happyReduce_33 = happyReduce 6# 15# happyReduction_33 -happyReduction_33 (happy_x_6 `HappyStk` +happyReduce_32 = happyReduce 6# 15# happyReduction_32 +happyReduction_32 (happy_x_6 `HappyStk` happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` @@ -551,15 +544,15 @@ happyReduction_33 (happy_x_6 `HappyStk` (ECase happy_var_2 happy_var_5 ) `HappyStk` happyRest}} -happyReduce_34 = happySpecReduce_1 15# happyReduction_34 -happyReduction_34 happy_x_1 +happyReduce_33 = happySpecReduce_1 15# happyReduction_33 +happyReduction_33 happy_x_1 = case happyOut25 happy_x_1 of { happy_var_1 -> happyIn20 (happy_var_1 )} -happyReduce_35 = happySpecReduce_3 16# happyReduction_35 -happyReduction_35 happy_x_3 +happyReduce_34 = happySpecReduce_3 16# happyReduction_34 +happyReduction_34 happy_x_3 happy_x_2 happy_x_1 = case happyOut9 happy_x_1 of { happy_var_1 -> @@ -568,20 +561,20 @@ happyReduction_35 happy_x_3 (LetDef happy_var_1 happy_var_3 )}} -happyReduce_36 = happySpecReduce_0 17# happyReduction_36 -happyReduction_36 = happyIn22 +happyReduce_35 = happySpecReduce_0 17# happyReduction_35 +happyReduction_35 = happyIn22 ([] ) -happyReduce_37 = happySpecReduce_1 17# happyReduction_37 -happyReduction_37 happy_x_1 +happyReduce_36 = happySpecReduce_1 17# happyReduction_36 +happyReduction_36 happy_x_1 = case happyOut21 happy_x_1 of { happy_var_1 -> happyIn22 ((:[]) happy_var_1 )} -happyReduce_38 = happySpecReduce_3 17# happyReduction_38 -happyReduction_38 happy_x_3 +happyReduce_37 = happySpecReduce_3 17# happyReduction_37 +happyReduction_37 happy_x_3 happy_x_2 happy_x_1 = case happyOut21 happy_x_1 of { happy_var_1 -> @@ -590,8 +583,8 @@ happyReduction_38 happy_x_3 ((:) happy_var_1 happy_var_3 )}} -happyReduce_39 = happyReduce 5# 18# happyReduction_39 -happyReduction_39 (happy_x_5 `HappyStk` +happyReduce_38 = happyReduce 5# 18# happyReduction_38 +happyReduction_38 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` @@ -604,20 +597,20 @@ happyReduction_39 (happy_x_5 `HappyStk` (Case happy_var_1 happy_var_3 happy_var_5 ) `HappyStk` happyRest}}} -happyReduce_40 = happySpecReduce_0 19# happyReduction_40 -happyReduction_40 = happyIn24 +happyReduce_39 = happySpecReduce_0 19# happyReduction_39 +happyReduction_39 = happyIn24 ([] ) -happyReduce_41 = happySpecReduce_1 19# happyReduction_41 -happyReduction_41 happy_x_1 +happyReduce_40 = happySpecReduce_1 19# happyReduction_40 +happyReduction_40 happy_x_1 = case happyOut23 happy_x_1 of { happy_var_1 -> happyIn24 ((:[]) happy_var_1 )} -happyReduce_42 = happySpecReduce_3 19# happyReduction_42 -happyReduction_42 happy_x_3 +happyReduce_41 = happySpecReduce_3 19# happyReduction_41 +happyReduction_41 happy_x_3 happy_x_2 happy_x_1 = case happyOut23 happy_x_1 of { happy_var_1 -> @@ -626,8 +619,8 @@ happyReduction_42 happy_x_3 ((:) happy_var_1 happy_var_3 )}} -happyReduce_43 = happyReduce 4# 20# happyReduction_43 -happyReduction_43 (happy_x_4 `HappyStk` +happyReduce_42 = happyReduce 4# 20# happyReduction_42 +happyReduction_42 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` @@ -638,8 +631,8 @@ happyReduction_43 (happy_x_4 `HappyStk` (EAbs happy_var_2 happy_var_4 ) `HappyStk` happyRest}} -happyReduce_44 = happyReduce 7# 20# happyReduction_44 -happyReduction_44 (happy_x_7 `HappyStk` +happyReduce_43 = happyReduce 7# 20# happyReduction_43 +happyReduction_43 (happy_x_7 `HappyStk` happy_x_6 `HappyStk` happy_x_5 `HappyStk` happy_x_4 `HappyStk` @@ -654,15 +647,15 @@ happyReduction_44 (happy_x_7 `HappyStk` (EPi happy_var_2 happy_var_4 happy_var_7 ) `HappyStk` happyRest}}} -happyReduce_45 = happySpecReduce_1 20# happyReduction_45 -happyReduction_45 happy_x_1 +happyReduce_44 = happySpecReduce_1 20# happyReduction_44 +happyReduction_44 happy_x_1 = case happyOut33 happy_x_1 of { happy_var_1 -> happyIn25 (happy_var_1 )} -happyReduce_46 = happySpecReduce_2 21# happyReduction_46 -happyReduction_46 happy_x_2 +happyReduce_45 = happySpecReduce_2 21# happyReduction_45 +happyReduction_45 happy_x_2 happy_x_1 = case happyOut26 happy_x_1 of { happy_var_1 -> case happyOut27 happy_x_2 of { happy_var_2 -> @@ -670,15 +663,15 @@ happyReduction_46 happy_x_2 (EApp happy_var_1 happy_var_2 )}} -happyReduce_47 = happySpecReduce_1 21# happyReduction_47 -happyReduction_47 happy_x_1 +happyReduce_46 = happySpecReduce_1 21# happyReduction_46 +happyReduction_46 happy_x_1 = case happyOut27 happy_x_1 of { happy_var_1 -> happyIn26 (happy_var_1 )} -happyReduce_48 = happySpecReduce_3 22# happyReduction_48 -happyReduction_48 happy_x_3 +happyReduce_47 = happySpecReduce_3 22# happyReduction_47 +happyReduction_47 happy_x_3 happy_x_2 happy_x_1 = case happyOut27 happy_x_1 of { happy_var_1 -> @@ -687,15 +680,15 @@ happyReduction_48 happy_x_3 (EProj happy_var_1 happy_var_3 )}} -happyReduce_49 = happySpecReduce_1 22# happyReduction_49 -happyReduction_49 happy_x_1 +happyReduce_48 = happySpecReduce_1 22# happyReduction_48 +happyReduction_48 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> happyIn27 (happy_var_1 )} -happyReduce_50 = happyReduce 4# 23# happyReduction_50 -happyReduction_50 (happy_x_4 `HappyStk` +happyReduce_49 = happyReduce 4# 23# happyReduction_49 +happyReduction_49 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` @@ -705,8 +698,8 @@ happyReduction_50 (happy_x_4 `HappyStk` (ERecType happy_var_3 ) `HappyStk` happyRest} -happyReduce_51 = happyReduce 4# 23# happyReduction_51 -happyReduction_51 (happy_x_4 `HappyStk` +happyReduce_50 = happyReduce 4# 23# happyReduction_50 +happyReduction_50 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` @@ -716,49 +709,49 @@ happyReduction_51 (happy_x_4 `HappyStk` (ERec happy_var_3 ) `HappyStk` happyRest} -happyReduce_52 = happySpecReduce_1 23# happyReduction_52 -happyReduction_52 happy_x_1 +happyReduce_51 = happySpecReduce_1 23# happyReduction_51 +happyReduction_51 happy_x_1 = case happyOut9 happy_x_1 of { happy_var_1 -> happyIn28 (EVar happy_var_1 )} -happyReduce_53 = happySpecReduce_1 23# happyReduction_53 -happyReduction_53 happy_x_1 +happyReduce_52 = happySpecReduce_1 23# happyReduction_52 +happyReduction_52 happy_x_1 = happyIn28 (EType ) -happyReduce_54 = happySpecReduce_1 23# happyReduction_54 -happyReduction_54 happy_x_1 +happyReduce_53 = happySpecReduce_1 23# happyReduction_53 +happyReduction_53 happy_x_1 = case happyOut5 happy_x_1 of { happy_var_1 -> happyIn28 (EStr happy_var_1 )} -happyReduce_55 = happySpecReduce_1 23# happyReduction_55 -happyReduction_55 happy_x_1 +happyReduce_54 = happySpecReduce_1 23# happyReduction_54 +happyReduction_54 happy_x_1 = case happyOut6 happy_x_1 of { happy_var_1 -> happyIn28 (EInteger happy_var_1 )} -happyReduce_56 = happySpecReduce_1 23# happyReduction_56 -happyReduction_56 happy_x_1 +happyReduce_55 = happySpecReduce_1 23# happyReduction_55 +happyReduction_55 happy_x_1 = case happyOut7 happy_x_1 of { happy_var_1 -> happyIn28 (EDouble happy_var_1 )} -happyReduce_57 = happySpecReduce_1 23# happyReduction_57 -happyReduction_57 happy_x_1 +happyReduce_56 = happySpecReduce_1 23# happyReduction_56 +happyReduction_56 happy_x_1 = case happyOut8 happy_x_1 of { happy_var_1 -> happyIn28 (EMeta happy_var_1 )} -happyReduce_58 = happySpecReduce_3 23# happyReduction_58 -happyReduction_58 happy_x_3 +happyReduce_57 = happySpecReduce_3 23# happyReduction_57 +happyReduction_57 happy_x_3 happy_x_2 happy_x_1 = case happyOut20 happy_x_2 of { happy_var_2 -> @@ -766,8 +759,8 @@ happyReduction_58 happy_x_3 (happy_var_2 )} -happyReduce_59 = happySpecReduce_3 24# happyReduction_59 -happyReduction_59 happy_x_3 +happyReduce_58 = happySpecReduce_3 24# happyReduction_58 +happyReduction_58 happy_x_3 happy_x_2 happy_x_1 = case happyOut9 happy_x_1 of { happy_var_1 -> @@ -776,20 +769,20 @@ happyReduction_59 happy_x_3 (FieldType happy_var_1 happy_var_3 )}} -happyReduce_60 = happySpecReduce_0 25# happyReduction_60 -happyReduction_60 = happyIn30 +happyReduce_59 = happySpecReduce_0 25# happyReduction_59 +happyReduction_59 = happyIn30 ([] ) -happyReduce_61 = happySpecReduce_1 25# happyReduction_61 -happyReduction_61 happy_x_1 +happyReduce_60 = happySpecReduce_1 25# happyReduction_60 +happyReduction_60 happy_x_1 = case happyOut29 happy_x_1 of { happy_var_1 -> happyIn30 ((:[]) happy_var_1 )} -happyReduce_62 = happySpecReduce_3 25# happyReduction_62 -happyReduction_62 happy_x_3 +happyReduce_61 = happySpecReduce_3 25# happyReduction_61 +happyReduction_61 happy_x_3 happy_x_2 happy_x_1 = case happyOut29 happy_x_1 of { happy_var_1 -> @@ -798,8 +791,8 @@ happyReduction_62 happy_x_3 ((:) happy_var_1 happy_var_3 )}} -happyReduce_63 = happySpecReduce_3 26# happyReduction_63 -happyReduction_63 happy_x_3 +happyReduce_62 = happySpecReduce_3 26# happyReduction_62 +happyReduction_62 happy_x_3 happy_x_2 happy_x_1 = case happyOut9 happy_x_1 of { happy_var_1 -> @@ -808,20 +801,20 @@ happyReduction_63 happy_x_3 (FieldValue happy_var_1 happy_var_3 )}} -happyReduce_64 = happySpecReduce_0 27# happyReduction_64 -happyReduction_64 = happyIn32 +happyReduce_63 = happySpecReduce_0 27# happyReduction_63 +happyReduction_63 = happyIn32 ([] ) -happyReduce_65 = happySpecReduce_1 27# happyReduction_65 -happyReduction_65 happy_x_1 +happyReduce_64 = happySpecReduce_1 27# happyReduction_64 +happyReduction_64 happy_x_1 = case happyOut31 happy_x_1 of { happy_var_1 -> happyIn32 ((:[]) happy_var_1 )} -happyReduce_66 = happySpecReduce_3 27# happyReduction_66 -happyReduction_66 happy_x_3 +happyReduce_65 = happySpecReduce_3 27# happyReduction_65 +happyReduction_65 happy_x_3 happy_x_2 happy_x_1 = case happyOut31 happy_x_1 of { happy_var_1 -> @@ -830,8 +823,8 @@ happyReduction_66 happy_x_3 ((:) happy_var_1 happy_var_3 )}} -happyReduce_67 = happySpecReduce_1 28# happyReduction_67 -happyReduction_67 happy_x_1 +happyReduce_66 = happySpecReduce_1 28# happyReduction_66 +happyReduction_66 happy_x_1 = case happyOut26 happy_x_1 of { happy_var_1 -> happyIn33 (happy_var_1 diff --git a/src/Transfer/Core/Par.y b/src/Transfer/Core/Par.y index c5cc4f3be..a7e0bade8 100644 --- a/src/Transfer/Core/Par.y +++ b/src/Transfer/Core/Par.y @@ -87,7 +87,6 @@ Pattern :: { Pattern } Pattern : '(' CIdent ListPattern ')' { PCons $2 (reverse $3) } | PatternVariable { PVar $1 } | 'rec' '{' ListFieldPattern '}' { PRec $3 } - | 'Type' { PType } | String { PStr $1 } | Integer { PInt $1 } diff --git a/src/Transfer/Core/Print.hs b/src/Transfer/Core/Print.hs index e779da0a2..50929716a 100644 --- a/src/Transfer/Core/Print.hs +++ b/src/Transfer/Core/Print.hs @@ -88,7 +88,6 @@ instance Print (Tree c) where PCons cident patterns -> prPrec _i 0 (concatD [doc (showString "(") , prt 0 cident , prt 0 patterns , doc (showString ")")]) PVar patternvariable -> prPrec _i 0 (concatD [prt 0 patternvariable]) PRec fieldpatterns -> prPrec _i 0 (concatD [doc (showString "rec") , doc (showString "{") , prt 0 fieldpatterns , doc (showString "}")]) - PType -> prPrec _i 0 (concatD [doc (showString "Type")]) PStr str -> prPrec _i 0 (concatD [prt 0 str]) PInt n -> prPrec _i 0 (concatD [prt 0 n]) FieldPattern cident pattern -> prPrec _i 0 (concatD [prt 0 cident , doc (showString "=") , prt 0 pattern]) diff --git a/src/Transfer/Core/Skel.hs b/src/Transfer/Core/Skel.hs index 021722896..005ae92b1 100644 --- a/src/Transfer/Core/Skel.hs +++ b/src/Transfer/Core/Skel.hs @@ -19,7 +19,6 @@ transTree t = case t of PCons cident patterns -> failure t PVar patternvariable -> failure t PRec fieldpatterns -> failure t - PType -> failure t PStr str -> failure t PInt n -> failure t FieldPattern cident pattern -> failure t @@ -65,7 +64,6 @@ transPattern t = case t of PCons cident patterns -> failure t PVar patternvariable -> failure t PRec fieldpatterns -> failure t - PType -> failure t PStr str -> failure t PInt n -> failure t |
