【发布时间】:2012-05-29 14:19:53
【问题描述】:
我试图永远重复一个 IO 操作,但是将一次执行的结果输入到下一次执行中。像这样的:
-- poorly named
iterateM :: Monad m => (a -> m a) -> a -> m b
iterateM f a = f a >>= iterateM f
Hoogle 似乎没有帮助我,但我看到很多功能看起来非常接近我想要的,但似乎没有一个功能完全符合。
【问题讨论】:
-
我创建了一个
iterateM_函数作为this question 的答案。 -
@pat:很高兴看到我不是唯一一个!