2
我对Haskell mongoDB驱动程序和access
函数的返回类型有一些困难。据the hackage documentation和the tutorial on the haskell-mongodb github page,access
应该有类型访问函数不返回失败a
MonadIO m => Pipe -> AccessMode -> Database -> Action m a -> m (Either Failure a)
然而,在我的代码,本地Hoogle查询的类型推断,和the source code,没有任何涉及。他们都表示我仍然很新的哈斯克尔,所以我毫不犹豫地跳到结论,即文档的作者是错误的类型
MonadIO m => Pipe -> AccessMode -> Database -> Action m a -> m a
,但是从我的角度受挫,感觉等的情况。
这是monad/kind tricketing,我误解了文档,或者是文档不正确?
并且[当前文档](https://hackage.haskell.org/package/mongoDB-2.2.0/docs/Database-MongoDB-Query.html#g:1)没有,尽管教程和对当前版本的评论仍然引用'Either'返回类型。截至发布时,这是[GitHub上的开放问题](https://github.com/mongodb-haskell/mongodb/issues/67)。感谢您指出了这一点。 – jcolemang