6
我有這樣的代碼,適合我的需要:將[IO Int]轉換爲Haskell中的IO [Int]?
f :: [IO Int] -> IO [Int]
f [] = return []
f (x:xs) = do
a <- x
as <- f xs
return (a:as)
但我有吼聲將是一個預先定義的方式(MSUM?)
,但我看不出。
任何幫助將受到歡迎。 Thx
我有這樣的代碼,適合我的需要:將[IO Int]轉換爲Haskell中的IO [Int]?
f :: [IO Int] -> IO [Int]
f [] = return []
f (x:xs) = do
a <- x
as <- f xs
return (a:as)
但我有吼聲將是一個預先定義的方式(MSUM?)
,但我看不出。
任何幫助將受到歡迎。 Thx
是的,它在名爲sequence
的標準庫中可用。它具有比f
:Monad m => [m a] -> m [a]
更普遍的類型,因爲它適用於任何Monad
,而不僅僅是IO
。
您可以通過搜索Hoogle上的[IO a] -> IO [a]
類型來找到它。
謝謝米哈伊爾,正是我所需要的 – asbxl 2013-04-05 14:12:39