[cvs-nhc98] patch applied (hat): Implemented " deriving Eq" in portable transformation.

Malcolm Wallace Malcolm.Wallace at cs.york.ac.uk
Tue Oct 10 07:13:08 EDT 2006


Fri Feb  8 10:55:32 PST 2002  olaf
  * Implemented "deriving Eq" in portable transformation.
  
  The general mechanism and the specific one for the class Eq are implemented.
  Deriving for the remaining classes still needs to be done.
  
  The derived code is untraced.
  
  I use a hack for determining the context of an instance. It is the context that will "commonly" be needed, but it is not correct in all cases. A correct implementation would require much more effort: context reduction (with knowledge about all classes, instances and type synonyms) and a fixed point iteration.

    M ./src/compiler98/HatTrans.hs -2 +2
    M ./src/compiler98/Makefile -1 +1
    M ./src/compiler98/PrettySyntax.hs -1 +1
    M ./src/compiler98/Syntax.hs +11
    M ./src/compiler98/TokenId.hs +3
    M ./src/compiler98/TraceId.hs -3 +20
    M ./src/compiler98/TraceTrans.hs -14 +19
    M ./src/hatlib/PreludeBasic.hs -4 +4
    M ./src/hattrans/HatTrans.hs -2 +2
    M ./src/hattrans/TraceId.hs -3 +20
    M ./src/hattrans/TraceTrans.hs -14 +19


More information about the Cvs-nhc98 mailing list