leniwa wersja mapM

Załóżmy, że otrzymuję dużą listę elementów podczas pracy z IO:

as <- getLargeList

Teraz staram się zastosowaćfn :: a -> IO b naas:

as <- getLargeList
bs <- mapM fn as

mapM ma typmapM :: Monad m => (a -> m b) -> [a] -> m [b]i tego właśnie potrzebuję pod względem dopasowania typów. Ale buduje cały łańcuch w pamięci, dopóki nie zwróci wyniku. Szukam analogumapM, które będą działać leniwie, abym mógł użyć głowybs podczas gdy ogon wciąż się buduje.

questionAnswers(2)

yourAnswerToTheQuestion