ハスケルでは、私はなぜ部分的なアプリケーションfoldr id
型チェックを理解していません。部分的なアプリケーション `foldr id` typecheckはなぜですか?
関連のタイプはfoldr
の最初の引数は(a->b->b)
ある
> :t foldr id
foldr id :: a -> [a -> a] -> a
> :t foldr
foldr :: (a -> b -> b) -> b -> [a] -> b
> :t id
id :: a -> a
です。対照的に、id
のタイプはa->a
です。それらは互換性がありません。
':t id ::(a - > a) - >(a - > a)'は参考になるかもしれません。 – dfeuer
@ChadGilbert編集していただきありがとうございます。あなたは '<! - language-all:haskell - >'を一度だけ書くことができます。 –