関数型プログラミング言語Haskell Part21
■ このスレッドは過去ログ倉庫に格納されています
0006デフォルトの名無しさん
2013/01/21(月) 14:48:42.62data Fix f =Fix (f (Fix f))
とすると、値コンストラクタFixは、ひとつの f (Fix f) 型の引数をとる
Fixはkindが (*->*)->*
fはkindが *ー>*
つまり、f自体が何かひとつの型引数をとるということ
fを[]とすれば
Fix::[Fix []] ー> Fix []
fをMaybeとすれば
Fix::Maybe (Fix Maybe) -> Fix Maybe
fを(,) a とすれば
Fix::(a, Fix ( (,) a ) ) -> Fix ( (,) a )
■ このスレッドは過去ログ倉庫に格納されています