我期待学习F#,但有一点让我感到困惑的是计算表达式(do-notation ??)语法和desugaring。Haskell程序员的计算表达式
在haskell中,您有一个非常简单的Monad类型类和用于将绑定和返回的desugaring注释的规则。添加关键字没有任何魔力;唯一必须匹配的是类型。
在F#中有一堆构建器,关键字和复杂性。
对于如何将一个概念映射到另一个概念有很好的解释吗?
我基本上想知道我是如何映射
do
x <- monadicComputation
foo x
someOtherMonadicComputation
let y = somePureComputation x
return $ bar y
到F#。
haskell中唯一的关键字是do,(< - )和let。
我想你的意思是说'do!'与'(>>)'相似。 – MisterMetaphor
@MisterMetaphor - 是的,谢谢。 – Lee
我希望我能接受所有这些答案,但我会采取这一个,因为看起来社区已经把它投得最多 – nimish