所以我有类似的东西:
[IO Blah, IO Blah, IO Blah]
Run Code Online (Sandbox Code Playgroud)
我真的只想要一个Blah
s 列表,我该怎么做?
PS:是的,我在IO功能中工作.
dav*_*420 16
使用sequence
.
从左到右评估序列中的每个操作,并收集结果.
do blahs <- sequence listOfIoBlah
-- now use blahs
Run Code Online (Sandbox Code Playgroud)
如果您知道如何将问题表述为一种类型,那么Hoogle在回答这些问题时非常有用,例如:http://www.haskell.org/hoogle/ ? hoogle =%5BIO + a%5D + -% 3E + IO +%5Ba上%5D
你想要的是什么sequence :: Monad m => [m a] -> m [a]
.它按预期工作:所有操作按顺序执行,结果被收集并返回.请注意,除非所有命令都已完成,否则不会返回任何内容.
归档时间: |
|
查看次数: |
1791 次 |
最近记录: |