đôi khi tôi thấy mình viết code như thế này:Một cách tốt hơn so với tính chiều dài của một danh sách các đơn vị
someFunc :: Foo -> Int
someFunc foo = length $ do
x <- someList
guard someGuard
return()
Hoặc tương đương:
someFunc foo = length [() | x <- someList, someGuard]
Có cách nào tốt hơn để thực hiện loại này tính toán? Hiệu quả hơn? Dễ đọc hơn? Thành ngữ hơn?
Tại sao không 'foldl''? –
@trinithis không có trong Prelude ... –