関数型プログラミング言語Haskell Part24
■ このスレッドは過去ログ倉庫に格納されています
0701デフォルトの名無しさん
2014/02/03(月) 06:07:38.67>次の方法でも似たようなことができる事が分かりました。
そのコードならTypeFamilies拡張要らないな
>>699の場合ではConstrという関連型を宣言するのに必要だった
>g :: (X t) => t
>g = f 7
>
>という使い方をすれば B の f ではなく、A の f だとみなされると嬉しいです。
これは無理だと思う。fの型は
f :: (C c p, p t) => Int -> t
だけど、gの型シグネチャからは(X t)から(p t)が言えることが要請されるだけで、
p=Xが確定する訳じゃないので、情報が足りない
■ このスレッドは過去ログ倉庫に格納されています