data X = 何か deriving (Eq, Ord)
と型Xが定義されたモジュールをモジュールMにインポートしました。

モジュールMで型XをShowのインスタンスにしたいのですが、
deriving Show と定義したのと同じように定義したいです。

このような場合は、deriving Show と定義された場合の show 関数を
真似るように自作するしかないでしょうか。

それとも、後から別に deriving Show 宣言を型Xの定義に追加する方法があるのでしょうか。


ちなみに、Show なのはただの例です。
deriving で宣言可能な型クラス全てについての質問です。