【发布时间】:2014-05-30 09:57:34
【问题描述】:
Haskell Monads 中语法“>>=”和“>>”的起源是什么?我不是在寻找关于 Monads 如何工作的解释,而是为什么语言设计者选择了这种语法。对我来说,“>>=”和“>>”似乎有点武断,从来没有直观的意义。有人有直观的解释吗?是来自范畴论的语法吗?
【问题讨论】:
-
语法糖有人吗?
-
Haskell 中的运算符并不是真正的糖;它们只是函数名。
-
不是真的,这只是名字的选择。
-
我认为它只是“有点像箭头,还没有被拿走”(尽管在这种情况下
=>>可能是一个更自然的选择)。