cvs commit: fptools/libraries/base/Data Typeable.hs

Sven Panne Sven.Panne at aedion.de
Wed Feb 25 19:23:53 EST 2004


ralf at glass.cse.ogi.edu wrote:
> ralf        2004/02/24 11:49:59 PST
> 
>   Modified files:
>     libraries/base/Data  Typeable.hs 
>   Log:
>   Proliferation of unsafeCoerce in Data.Typeable stopped. (There is now
>   just one cast0 which generalises on all previous forms: cast, castss,
>   castarr.) Started classes Typeable1/2 for unary/binary type constructors.
>   Added instances for lists, products, sums, functions, maybies.


I'm not sure if this commit is a good thing, because the module is now not
Haskell98 anymore (although the Haddock header stills claims it). This
breaks e.g. the Hugs build:

    env HUGSDIR='../hugsdir' HUGSFLAGS='' ./ffihugs +G +L'../hugsdir/libraries/Hugs/Storable_aux.c' Hugs.Storable
    runhugs: Error occurred
    ERROR "../hugsdir/libraries/Data/Typeable.hs":392 - Illegal Haskell 98 class constraint in class declaration
    *** Constraint : Typeable (a () ())

Although this would be easy to fix in Hugs' Makefile, I wanted to point this out.
Comments/opions from other people?

Cheers,
    S.



More information about the Cvs-libraries mailing list