![]() |
1
3
不,它不能作为monad正确工作,因为您使用可变状态。
假设你有一个单值
我期望这个计算返回一元
Monads的一个优点是,
代表
效果,它们表现为普通的纯的、不可变的值。你可以传递它们,复制它们(你可以扩展
编辑你可能听说过 一元定律 ,这是任何Monad实现都应该遵守的公式。然而,你在这里的问题并不是你违法,因为法律并没有讨论这个问题。事实上,单元定律通常用纯语言haskell来表述,因此不考虑副作用。 如果你愿意的话,你可以把它当作第四条不成文的单子法则:好的单子应该受到尊重。 referential transparency |
|
user29759326 · 如何返回递归函数中的最后一个值? 3 月前 |
|
malife89 · 将java中的字符串读取为正确的日期格式 3 月前 |
![]() |
Tim · 在java中,有没有更快的方法将字节数组写入文件? 3 月前 |
![]() |
rudraraj · java中未声明最终变量 4 月前 |
![]() |
Bala Ji · 以下BFS的实施效率如何? 4 月前 |