Haskell中的分配属性规则如何?

时间:2013-11-22 10:10:19

标签: haskell

有趣的是,当有圆括号时,haskell如何倍增。例如:

5 *(3 + 4)

3 + 4 = 7

5 * 7 = 35

我乘以这种方式

但我怀疑Haskell(ghci)做了同样的事情

5 * 3 + 5 * 4 = 35

是否有任何分配属性规则?

感谢您的关注

2 个答案:

答案 0 :(得分:3)

答案简短:不。

此外,编译器没有兴趣在这个方向上应用分布规则:你必须执行3个操作(两个*,一个+)而不是两个。

答案 1 :(得分:2)

在Haskell中,5*(3 + 4)(*) 5 ((+) 3 4)的语法糖,所以我认为总和是在产品之前执行的。