Tôi chỉ cần chạy qua cú pháp sau đây trong một đoạn mã Haskell -Cú pháp haskell này là gì?
data A = A Int Int | B
m :: A -> Int
m a = case a of
A{} -> 1
_ -> 2
các A{}
làm gì ở đây là gì? Liệu số {}
có tự động khớp với bất kỳ số đối số nào không?
Tôi có cảm giác rằng điều này đang khai thác thực tế là cú pháp bản ghi Haskell desugars đến một loạt các hàm và một kiểu dữ liệu đại số thông thường. Đó là trường hợp?
Tìm hiểu điều gì đó mới mẻ mỗi ngày và tôi đã lập trình Haskell được 5 năm; không bao giờ nhìn thấy cú pháp trong cuộc đời tôi. –