Với một kiểu dữ liệu ví dụ với cú pháp kỷ lục:mẫu phù hợp vs chức năng cú pháp đăng ký cuối cùng khai thác lĩnh vực kiểu dữ liệu
data VmInfo = VmInfo {infoVid :: String
,infoIndex :: Int
,infoPid :: Int
,infoExe :: String
} deriving (Show)
và (vmInfo :: String -> VmInfo) chức năng mà tạo ra và trả về cấu trúc dữ liệu trên cho tên vm dưới dạng chuỗi.
Tôi có thể thấy hai phương pháp để trích xuất các phần riêng lẻ của loại dữ liệu VmInfo.
(VmInfo vid _ _ _) <- vmInfo vm
Chỉ là mẫu phù hợp. Và ...
vid <- infoVid <$> vmInfo vm
bằng cách sử dụng chức năng tạo trình biên dịch cú pháp ghi.
Câu hỏi rất đơn giản: đó là phương pháp ưa thích?
Số tiền đánh máy khôn ngoan, chúng giống nhau nên tôi đang tìm kiếm tốc độ và tính chính xác/thực hành tốt nhất.
Tôi giả định kết hợp mẫu sẽ nhanh hơn nhưng sau đó cú pháp ghi điểm là gì?
Cảm ơn.
Tôi tin rằng cú pháp bản ghi được biến thành phiên bản khớp mẫu bởi trình biên dịch, do đó sẽ không có sự khác biệt về tốc độ. – ricochet1k