通过教程等在ghci - 迄今如此好。我完全错过了一些东西:我的函数构建了一个IO [FilePath]
“事物”。在ghci中它出来是这样的:Haskell:没有得到这与IO [FilePath]
["xml","velocity.log.1","velocity.log"]
(截断简洁列表)
我看到这个函数是做我想要的。下一步是我想“自己打印”。
没有我让我打印结果。我不想在Haskell中延续我的Java/C#/ Python习惯 - 没有意义。我相信Haskell有不同的做法,但我不明白如何从这个函数中获得(有限的)值。
module Main (
main
) where
import RecursiveContents
main = do putStrLn "this"
getRecursiveContents "/home/xyz/myDir"
This works。但是如果我想主要打印getRecursiveContents "/home/xyz/myDir"
的结果呢?
在ghci中,我只需键入/粘贴getRecursiveContents "/home/xyz/myDir"
,并且东西被喷出 - 我必须自己打印什么?
如果我做的:在ghci中
let xyz = getRecursiveContents "/home/xyz/myDir"
,我可以xyz
唯一能做的就是类型: xyz <enter>
和看到的结果。
我不能做头部,尾巴等等。我知道IO [FilePath]
是一些特别的东西,不像数组或列表[a]
- 但我没有做的是帮助我理解这个过去。
我一定会错过一些东西 - 我在Learn You a Haskell或Real World Haskell中找不到。我不是在正确的地方嬉戏吗?
赞赏任何反馈或涂料板。
感谢您的快速回复 - 我错过了所有重要的“< - ” – user192127 2011-05-15 04:24:05