所以我是Haskell的初学者,我运行了一个在main中输出元组列表的函数,有没有办法在不使用另一个函数的Monad的情况下访问元组列表,所以我可以检查一下元组列表包含某些元素?或者我真的需要使用Monad吗?谢谢。
答案 0 :(得分:3)
是的,将其作为参数传递。例如
otherFunction :: Eq t => [(t, t)] -> Bool
otherFunction tuplelist = and [ x == y | (x,y) <- tuplelist ]
main = do
tuplelist <- makeListOfTuples
let result = otherFunction tuplelist
print result
此处otherFunction
完全是纯粹的,但它可能取决于IO
中的数据。