Haskell 为什么Hackage上pair的Monad实例并没有用于返回的实现?

Haskell 为什么Hackage上pair的Monad实例并没有用于返回的实现?,haskell,monads,Haskell,Monads,在写文章的时候,主要是为了更好地理解成对的单子,我在阅读的时候,参考了(,)a的单子实例 实例幺半群a=>Monad((,)a)其中 (u,a)>>=k=k(v,b)->(u,v,b)的情形ka 返回的在哪里???我希望能找到这样的东西 返回a=(mempty,a) 除了上面的两行之外。return的这一定义是否有其他含义?或者它是在其他地方定义的?在Haskell的现代版本中(具体来说,baseversion 4.8.0.0和更新版本,对应于GHC version 7.10.1和更新版本)

在写文章的时候,主要是为了更好地理解成对的单子,我在阅读的时候,参考了
(,)a
单子
实例

实例幺半群a=>Monad((,)a)其中
(u,a)>>=k=k(v,b)->(u,v,b)的情形ka
返回的
在哪里???我希望能找到这样的东西

返回a=(mempty,a)

除了上面的两行之外。
return
的这一定义是否有其他含义?或者它是在其他地方定义的?

在Haskell的现代版本中(具体来说,
base
version 4.8.0.0和更新版本,对应于GHC version 7.10.1和更新版本),所以它的实例只需要定义
=
。这是。

(…因此我们发现
实例幺半群a=>适用((,)a),其中纯x=(mempty,x)
在问题中链接)