[Haskell-cafe] template haskell for typeclass synonyms
Antoine Latter
aslatter at gmail.com
Mon Nov 1 19:12:56 EDT 2010
2010/11/1 Paolino <paolo.veronelli at gmail.com>:
> I think I've got something nice in the end.
>
> http://hpaste.org/41042/classsynonymhs
>
> example:
>
> class ( ParteDi (Servizio a) s
> , Read a
> , Eq a
> , Show a
> , Integer `ParteDi` s
> ) ⇒ SClass s a
>
> $(classSynonym ''SClass)
>
> ghci ":i SClass" command is printing some strange type variables but it
> compiles
>
Template Haskell might be overkill for this. In the past, I've done:
> class (Eq b, Show b, MyClass b, MyOtherClass b) => MySynonym b
> instance (Eq b, Show b, MyClass b, MyOtherClass b) => MySynonym b
I think this requires a couple of GHC extensions, but TemplateHaskell
is an extension as well. Maybe there are pitfalls with this approach.
Antoine
More information about the Haskell-Cafe
mailing list