【发布时间】:2015-04-18 10:48:51
【问题描述】:
对于unit = Try,Try 不是单子,因为左单位法则失效。
Try(expr) flatMap f != f(expr)
但是问题变成了:Try 是单子,如果 unit = Success?
在这种情况下:
Success(expr) flatMap f == f(expr)
所以它是一个单子。
我的理解正确吗?
【问题讨论】:
-
这通常是为
Try编写单元的方式,可以说它仍然违反了组合法则。这些讨论都很随意,不过我个人认为它们没有多大价值。