4
は、我々はいくつかの既存のクラスまたは制約C
、および以下の持っているとしましょう:もちろんtype D s ...
の単射型家族や制約
{-# TypeFamilyDependencies #-}
type family F t = s | s -> t
type D s = (s ~ T t, C t)
が原因不明の変数t
のコンパイルに失敗しますが、私はどのように書くことができますD s
のようなものですか?私が思う
type D s = (C (T_Inverse s))
は単射のT_Inverse
が存在するためとして有効である必要があります:私は基本的に書きたいです。私はそれを表現する方法を知りません。
2番目の例がコンパイルされないというのは本当に迷惑です。 – Alec