在OCaml中更改应用程序顺序

Ram*_*esh 7 ocaml

有没有办法将顺序从左关联更改为右关联,除了括号?例如在Haskell,你可以写foo $ bar bfoo将被应用到从一个结果bar b.

let a x = x * 4;;
let b y = y + 2;;

let c = a ??? b 3;;

print_int c;;
Run Code Online (Sandbox Code Playgroud)

应打印20

new*_*cct 6

当然,你可以自己定义:

let (@@@) f x = f x
Run Code Online (Sandbox Code Playgroud)

然后,a @@@ b 3计算结果为20.确保选择一个起始符号,使其为右关联(参见此处)($...左关联)