a veces me encuentro escribiendo código como este:Una mejor manera de contar la longitud de una lista de unidades
someFunc :: Foo -> Int
someFunc foo = length $ do
x <- someList
guard someGuard
return()
o equivalentemente:
someFunc foo = length [() | x <- someList, someGuard]
¿Hay una mejor manera de realizar este tipo de computación? ¿Más eficiente? Más legible? Más idiomático?
¿Por qué no 'foldl''? –
@trinithis no en el Preludio ... –