関数型プログラミング言語Haskell Part5
■ このスレッドは過去ログ倉庫に格納されています
0756デフォルトの名無しさん
2006/10/01(日) 22:21:58VAFunは3引数の型クラス。(多引数の型クラスはHaskell98にはない)
VAFun a b cという条件は、a, b, cの三つ組がVaFunのインスタンスである、という条件を表す。
だから、
createList :: VAFun Int [Int] x => x
は、Int, [Int], xの三つ組がVaFunのインスタンスであるような全てのxについて、
createListはその型を取り得る、というように読む。
>>754
「| f -> r」の部分は、「ただし、fが決まればrはただ一つ決まる」という意味。
関数従属(functional dependency)といって、これもHaskell98にはない。
Type Classes with Functional Dependencies
http://web.cecs.pdx.edu/~mpj/pubs/fundeps.html
■ このスレッドは過去ログ倉庫に格納されています