Nếu công trình này:Haskell chức năng thành phần câu hỏi
Prelude Data.Char> map toUpper ("sdfsd" ++ "dfgfdg")
"SDFSDDFGFDG"
Sau đó, tại sao điều này không?
Prelude Data.Char> map toUpper . (++) "sdfsd" "dfgfdg"
<interactive>:1:14:
Couldn't match expected type `a -> [Char]'
against inferred type `[Char]'
In the second argument of `(.)', namely `(++) "sdfsd" "dfgfdg"'
In the expression: map toUpper . (++) "sdfsd" "dfgfdg"
In the definition of `it': it = map toUpper . (++) "sdfsd" "dfgfdg"
Ưu tiên người vận hành. Ứng dụng chức năng "liên kết" rất chặt chẽ; (.) liên kết rất yếu. – jrockway
'(.)' Liên kết rất chặt chẽ (ưu tiên = 9), nhưng ứng dụng hàm liên kết chặt chẽ hơn (ưu tiên = 10). Chỉ cần chèn '$' giữa hai chuỗi để sửa nó. '$' có mức ưu tiên rất thấp, ** 0 **. –