I seem to recall Matt Morrow having some code lying around for automatically generating such instances using haskell-src-exts. I wonder how hard it would be to adapt to Template Haskell. -Edward Kmett On Tue, Apr 14, 2009 at 2:03 AM, Ryan Ingram <ryani.spam@gmail.com> wrote:
You might be able to write some Template Haskell to derive the Show instance.
It's a bit tricky, because there are some types which can't have Show derived, such as:
data Foo where Broken :: a -> Foo
What should show (Broken id) do?
-- ryan
On Mon, Apr 13, 2009 at 9:28 PM, Norman Ramsey <nr@cs.tufts.edu> wrote:
I've got a fairly large GADT for which I wished to use deriving (Show) but I got a mysterious error message:
Exp.hs:13:11: Can't make a derived instance of `Show (Exp a)' (`Exp' has non-Haskell-98 constructor(s)) In the data type declaration for `Exp'
This is from GHC. Does anybody know a compiler option or other trick that will coax the compiler into producing a Show instance. (I know I can write one by hand, but I'd rather not bother.)
Norman _______________________________________________ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
_______________________________________________ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell