コンストラクターでダイナミクスを受け入れることができるデータ型Locを定義しました。さらに、== 演算子を使用してLocデータ型を比較する必要があります。だから私はこのようなものを思いついた:
data Loc = UnknownLoc | DynamicLoc Dynamic deriving (Eq,Show)
instance Eq Dynamic
data DynamicLocation = Loc_1 | Loc_2 deriving (Eq,Show)
instance Typeable DynamicLocation
しかし、次の行を実行しようとすると、stackoverflow 例外が発生します。
DynamicLoc (toDyn Loc_1) == DynamicLoc (toDyn Loc_1)
何か案が?