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