I have a data type for which I want to generate my own show string in a few cases, e.g., 

data T =    T1 ...
             | T2 ...
             | T3 ...
             ...

I'd like to do something like this,

instance Show T where
     show T5 ... = <something special>
     show t = showTheDerived t

Is there a way to do something like that simply?
   

-- Russ