我一直在阅读excellent introduction to monads for Clojure programmers。该文章说明Identity monad在功能上等同于Clojure的让,并且序列/列表monad相当于对于。用于Clojure身份monad
当文章到达monad变换器时,它将显示一个结合Maybe和Sequence monads的示例。好吧,所以使用序列monad而不是的的一个原因是我可以转换它。然而,改变一个身份monad对我来说没有意义 - 这不就等于只是建立变换monad的东西吗?例如,如果我将Maybe与Identity一起转换 - 是不是只给了我一个Maybe,这会更容易直接声明?
可有人清理是否有实际用途Clojure中选购身份单子在让(也许是我没有想到一路过关斩将变压器的含义是什么?),还是只是有为了理论上的完整性?