Tôi đang sử dụng Data.Sequence
để thay thế danh sách cho hiệu suất tốt hơn. Với danh sách, chúng tôi có thể làm như sauMẫu khớp với Data.Sequence như danh sách
foo :: [Int] -> Int
foo [] m = m
foo (x:xs) m = ...
Làm cách nào để hoàn thành điều này với Data.Sequence
. Tôi đã thử những điều sau đây:
foo:: S.Seq Int -> Int
foo S.empty m = m
foo (x S.<: xs) m = ...
Tôi nghĩ rằng giải pháp liên quan đến việc sử dụng S.viewl
và S.viewr
, nhưng dường như không thể tìm ra cách.
Ý của bạn là S.EmptyL – abden003