mer*_*ict 6 haskell state-monad applicative
查看文档Control.Applicative,我注意到它们具有某些monad的实例声明(例如IO,Maybe特别是ST),但是没有MTL monad的实例,例如State和RWS.相反,它看起来像是WrappedMonad定义了一个通用类型,我猜测它是涵盖所有其他情况.
所以这是我的问题:
为什么没有ApplicativeMTL monad的实例?到目前为止,我自己能够找到的最好的答案是一个三年前的帖子,有人实现了这些实例,并被忽略了.
最终我希望能够以State一种适用的方式使用(如我所推荐的那样),但如果我不得不用WrappedMonad数据构造函数丢弃我的代码,那么它似乎不是一个胜利.我也可以不理会WrappedMonad完全,并定义Applicative实例自己,是为做了同样的方式IO,ST等等:在以下方面return与ap......但似乎愚蠢的为好.
| 归档时间: |
|
| 查看次数: |
1014 次 |
| 最近记录: |