我有以下问题:给定 a[String]和String->IO Int. 所以我可以进行转换(地图)并得到[IO Int]. 现在,我必须做两件事——从一开始就执行这些操作,直到结果是肯定的,我需要知道,所有列表都已处理。我被禁止在第一个非阳性结果后处理。
takeWhileM不回答第二个问题(长度比较太不切实际),spanM执行禁止IO。
当然,我可以自己编写递归函数,但我想以 Haskell 的方式编写,具有所有高阶函数的优点。
建议?可能,完全使用另一种方法?上面的任务是我项目中的一个简化任务。