Trong Haskell, các toán tử chỉ là các hàm bình thường có tên được tạo thành từ các biểu tượng và được sử dụng theo mặc định. Bạn có thể sử dụng chúng giống như một định danh bình thường bằng cách gói chúng trong ngoặc đơn:
λ> :t (+)
(+) :: Num a => a -> a -> a
$
chỉ là một nhà điều hành như bản thân này. Nó đại diện cho ứng dụng chức năng và được định nghĩa như sau:
f $ x = f x
Bạn có thể nhận dạng của nó giống như (+)
:
λ> :t ($)
($) :: (a -> b) -> a -> b
khai thác Haskell cũng có thể được áp dụng một phần như các chức năng bình thường, bao bì của họ trong ngoặc với đối số cho một bên. Ví dụ: (+ 1)
giống với \ x -> x + 1
và (1 +)
giống với \x -> 1 + x
.
Điều này cũng áp dụng cho $
quá, vì vậy ($ fst client)
cũng giống như \ f -> f $ fst client
hoặc chỉ \ f -> f (fst client)
. Đoạn mã bạn đã kiểm tra nếu bất kỳ của danh sách hàm nào trả về true là fst client
.
Nguồn
2015-04-17 18:19:24
'3. LỢI NHUẬN !!!! – leppie