来自 Haskell 的 Ruby 中的优先级运算符


(max 23,23) == (max 23,23)

在上面的例子中,我必须在这两种方法上加上括号。有没有类似于 Haskell 的优先运算符的东西:dollar($)这样我就可以写这样的东西:

(max 2,3) == $ max 2,2

或者像这样:

$ max 2,3 == $ max 2,3

两个例子都计算为第一个例子?

或者有什么东西让我在 Ruby 中拥有优先权,比如方法定义中的某个关键字?

运算符优先级不可修改。如果要更改默认优先级,请使用括号。

问题出在解析器中(假设您正在使用散放参数定义max(;Ruby 的自由空白策略可能会在不清楚应该如何解析某些内容时产生问题。

最新更新