2
私は、次のようなコードがある場合は、スタンドアロン作ったときに動作し、失敗しましたエラーのような単純な変数ではないはずです。関連するタイプの家族は
しかし、私は単純に次のようなコードを再編成することができます
type family T t1 t2
class C where
...
type instance T (X t) (t a b) = a
instance C (X t) where
....
そして、すべてが今正常に動作するようです。
多少複雑な構文なので、ファミリ定義をクラスから取り除くことで何かを失うのですか、クラス内の定義は構文的な砂糖なので、それを取り出すのは比較的コストがかからない回避策ですか?
'クラスC 'のパラメータは何ですか?それが重要かもしれないと思います。 – chi
私の理解は、現在のところ、関連するタイプのファミリーはかなり構文的な砂糖です。私は本当に彼らがそのように追加されるべきであると確信していない。 – dfeuer