gpt4 book ai didi

haskell 奎因 : "ap" Monad

转载 作者:行者123 更新时间:2023-12-02 14:53:53 29 4
gpt4 key购买 nike

在 Haskell 中使用“ap”monad 的正确方法是什么?我想做类似的事情:

main = (putStr . ap (++) show) "main = (putStr . ap (++) show) "

但我收到错误“不在范围内:'ap'。”

使用“import Control.Monad”没有任何作用。我已经尝试过给予它

"ap :: Monad m => m (a -> b) -> m a -> m b" 

然后我得到“‘ap’的类型签名缺少附带的绑定(bind)”

最佳答案

导入Control.Monad应该给你ap 。但是,在除最新版本的 GHC(7.6.1 及更高版本)之外的所有版本中,您还需要导入 Control.Monad.Instances使用函数的 monad 实例。

或者,您可以导入 Control.Applicative这给你 <*>运算符,即 ap概括为Applicative ,以及将其与函数一起使用的必要实例。

关于 haskell 奎因 : "ap" Monad,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16284409/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com