在Haskell中,如何去寫入任意大量的文件?寫入Haskell中的多個文件
舉個例子,假設我想把a
到z
這兩個字母放在一個文件名裏面,這個文件的內容是字母。最初的嘗試是做到以下幾點:
main :: IO()
main = do
let letter = map (:"") ['a'..'z']
zipWith writeFile letter letter
這將產生以下錯誤:
Couldn't match expected type 'IO()' with actual type '[IO()]'
我覺得應該有一個方法來遍歷一個do塊列表,但我避風港現在還找不到它。
也許你可以用虛假行爲摺疊你的'zipWith',這樣你就可以得到正確的類型? – bli
@bli我在這裏掙扎的是我想要類型爲'[IO()]',因爲我想執行多個IO操作。我覺得do block應該有一個方法來接受一個列表,或者將它展平給我。 – martin