[add parsing of standalone deriving, clean up some code involving names and the parser
John Meacham <john@repetae.net>**20080218030815] hunk ./FrontEnd/HsParser.y 106
+      'derive'        { KW_Derive }
hunk ./FrontEnd/HsParser.y 299
+      | 'derive' 'instance' srcloc ctype
+                      { HsDeclDeriving $3 $4 }
hunk ./FrontEnd/HsParser.y 826
+      | 'derive'              { derive_name }
hunk ./FrontEnd/HsParser.y 922
+
+as_name	              = UnQual $ HsIdent "as"
+derive_name	      = UnQual $ HsIdent "derive"
+qualified_name        = UnQual $ HsIdent "qualified"
+hiding_name	      = UnQual $ HsIdent "hiding"
+minus_name	      = UnQual $ HsIdent "-"
+pling_name	      = UnQual $ HsIdent "!"
+star_name	      = UnQual $ HsIdent "*"
+hash_name	      = UnQual $ HsIdent "#"
+dot_name	      = UnQual $ HsIdent "."
+prelude_mod	      = Module "Prelude"
+main_mod	      = Module "Main"
+
+unit_con_name	      = UnQual (HsIdent "()")
+tuple_con_name i      = Qual (Module "Jhc.Basics") (HsIdent ("("++replicate i ','++")"))
+
+unit_con	      = HsCon { {-hsExpSrcSpan = bogusSrcSpan,-} hsExpName = unit_con_name }
+tuple_con i	      = HsCon { {-hsExpSrcSpan = bogusSrcSpan,-} hsExpName = (tuple_con_name i) }
+
+
+unit_tycon_name       = unit_con_name
+fun_tycon_name        = Qual (Module "Jhc@") (HsIdent "->")
+list_tycon_name       = UnQual (HsIdent "[]")
+tuple_tycon_name i    = tuple_con_name i
+
+list_tycon	      = HsTyCon list_tycon_name
hunk ./FrontEnd/HsSyn.hs 427
-prelude_mod	      = Module "Prelude"
-main_mod	      = Module "Main"
-
-unit_con_name	      = UnQual (HsIdent "()")
-tuple_con_name i      = Qual (Module "Jhc.Basics") (HsIdent ("("++replicate i ','++")"))
-
-unit_con	      = HsCon { {-hsExpSrcSpan = bogusSrcSpan,-} hsExpName = unit_con_name }
-tuple_con i	      = HsCon { {-hsExpSrcSpan = bogusSrcSpan,-} hsExpName = (tuple_con_name i) }
-
-as_name	              = UnQual $ HsIdent "as"
-qualified_name        = UnQual $ HsIdent "qualified"
-hiding_name	      = UnQual $ HsIdent "hiding"
-minus_name	      = UnQual $ HsIdent "-"
-pling_name	      = UnQual $ HsIdent "!"
-star_name	      = UnQual $ HsIdent "*"
-hash_name	      = UnQual $ HsIdent "#"
-dot_name	      = UnQual $ HsIdent "."
-
-unit_tycon_name       = unit_con_name
-fun_tycon_name        = Qual prelude_mod (HsIdent "->")
-list_tycon_name       = UnQual (HsIdent "[]")
-tuple_tycon_name i    = tuple_con_name i
-
-unit_tycon	      = HsTyCon unit_tycon_name
-fun_tycon	      = HsTyCon fun_tycon_name
-list_tycon	      = HsTyCon list_tycon_name
-tuple_tycon i	      = HsTyCon (tuple_tycon_name i)
hunk ./FrontEnd/Lexer.hs 98
+	| KW_Derive
hunk ./FrontEnd/Lexer.hs 190
+ ( "derive",    KW_Derive ),