:: Follow ups to haskell-cafe@ is probably best

Hi Alex,

{-# OPTIONS_DERIVE --derive=Ord,Eq,Read... #-}

That would apply to all definitions in the module, so you don't have
to repeat it for each type. You can attach a deriving annotation to
each type individually, but that's obviously not what you want.

Actually independent deriving would help a lot but am not sure of the
syntax.

could it be something like

   derive (Ord,Eq,Read,Show,Typeable) (BlogEntry Name Title Body Emai)

We can already do:

$( derive makeOrd ''Name )

Which doesn't require a preprocessor on GHC, using template haskell. I
guess the following may work in Template Haskell:

$( [derive typ cls | typ <- [makeOrd, makeEq, makeRead, makeShow], typ
<- [''BlogEntry, ''Name ...] )

But ask a TH expert for the details!

Thanks

Neil
_______________________________________________
Haskell mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell

Reply via email to