Haskell 如何访问在Main中调用的函数的值

Haskell 如何访问在Main中调用的函数的值,haskell,Haskell,我是Haskell的初学者,我在main中运行了一个输出元组列表的函数,有没有一种方法可以访问元组列表而不用在另一个函数中使用Monad,这样我就可以检查元组列表是否包含某些元素?还是我真的需要用Monad来做这个?谢谢 是,将其作为参数传递。比如说 otherFunction :: Eq t => [(t, t)] -> Bool otherFunction tuplelist = and [ x == y | (x,y) <- tuplelist ] main = do

我是Haskell的初学者,我在main中运行了一个输出元组列表的函数,有没有一种方法可以访问元组列表而不用在另一个函数中使用Monad,这样我就可以检查元组列表是否包含某些元素?还是我真的需要用Monad来做这个?谢谢

是,将其作为参数传递。比如说

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::Eq t=>[(t,t)]->Bool

otherFunction tuplelist=和[x==y |(x,y)Yes,将其作为参数传递

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::Eq t=>[(t,t)]->Bool

otherFunction tuplelist=和[x==y |(x,y)嗨,Jane。欢迎使用SO。请提供您编写的Haskell代码,以及您迄今为止尝试过的内容,以便我们更正。是的,将其作为参数传递。
main=do{tuplelist您不需要使用monad来扫描列表——您可以,但不应该:这会使简单的事情变得更复杂。可以利用库函数,如
elem
,或者定义自己的助手纯函数,使用递归和模式匹配来扫描列表。@luqui这应该是答案,而不是注释!(我承认,考虑到目前为止缺乏详细信息,用这种方式回答是有风险的,但如果你要写那种特别有风险的回答,你最好把它放在回答框中。)嗨,Jane。欢迎使用SO。请提供您编写的Haskell代码,以及您迄今为止尝试过的内容,以便我们能够纠正您的错误。是的,将其作为参数传递。
main=do{tuplelist您不需要使用monad来扫描列表——您可以,但不应该:这会使简单的事情变得更复杂。可以利用库函数,如
elem
,或者定义自己的助手纯函数,使用递归和模式匹配来扫描列表。@luqui这应该是答案,而不是注释!(我承认,考虑到目前为止缺乏详细信息,用这种方式回答是有风险的,但如果你要写那种特别有风险的回答,你最好把它放在回答框中。)