Questions:
* These pile-ups of types (M1 D ... (M1 C ... (...))) seem
hairy.
Is that the best way to control the depth of recursion?
* The suggestion from John Lato (see gist from his message
http://www.haskell.org/pipermail/haskell-cafe/2013-October/111139.html
)
uses a different style for the class types,
avoiding the mysterious unbound typevar
class GConName a where getConName :: a -> String
-- cp: class ... f where ... :: f a -> String
Are there places where one or other is more suitable?
(I did try John's style at first, but the constraints got
uglier.)
* The explicit data constructors in the pattern matching
are a bit temperamental w.r.t. undefined values.
(Specifically, my instance for (:*:) was crashing.)
Should I use dummy `_` patterns throughout?
(Then the type annotations are monsters!)
Thank you
AntC
_______________________________________________
Generics mailing list
Generics@haskell.org
http://www.haskell.org/mailman/listinfo/generics