【发布时间】:2014-06-27 16:17:01
【问题描述】:
我目前正在阅读范畴论基础知识,并尝试从语义上理解 Haskell 分配给 monad 操作的名称。
我通过的所有材料都将return 作为单位映射,将join 作为乘法映射(我可以使用名称“join”)。对于>>= 或bind,我什至(还)还没有找到数学中常见的名字。相反,我遇到了它的翻转形式,lift 或 -*,这反过来又对我有意义。
实际问题(tldr):
- 为什么使用“return”而不是“unit”?
- 为什么“绑定”被创造为命名法?
- 数学界有“绑定”的名称吗?
- 名称“bind”和“return”应该暗示什么语义?
【问题讨论】: