[Haskell-cafe] The Typeable class is changing

Carl Howells chowells at janrain.com
Mon Jul 11 22:54:34 CEST 2011


This will affect snap-core and heist, of the things I've provided
Typeable instances for.

In snap-core, deriving makes it use the internal module name, rather
than the canonical location of the type.  This causes issues with the
Hint library, so it's worked around by using a manual instance of
Typeable.

Alternatively, heist involves a monad transformer.  "deriving
Typeable" fails for monad transformers, because it can't handle TyCons
with arguments of kind other than *.

So, this change will hit me for two different reasons, and sadly
involve using CPP to control how things are compiled.

Carl

On Mon, Jul 11, 2011 at 11:18 AM, Yitzchak Gale <gale at sefer.org> wrote:
> Simon Marlow has announced[1] on the Haskell Libraries
> list that the Typeable class is changing.
>
> The standard way to create a Typeable instance is
> just to derive it. If you do that, you will not be affected
> by this change.
>
> But it seems that many packages create Typeable
> instances by explicitly using mkTyCon. If your package
> does this, it will eventually break, after a deprecation
> period.
>
> Please respond to this thread if you own a package
> that will be affected by this change.
>
> Can someone who has quick access to the entire contents
> of Hackage please do a grep and find out exactly which
> packages on Hackage will be affected? Thanks.
>
> -Yitz
>
> [1] http://www.haskell.org/pipermail/libraries/2011-July/016546.html
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>



More information about the Haskell-Cafe mailing list