gpt4 book ai didi

ocaml - OCaml 中是否有中缀函数组合运算符?

转载 作者:行者123 更新时间:2023-12-03 11:07:14 24 4
gpt4 key购买 nike

只是一个快速的问题。我想知道在标准库(或 Jane Street 的核心或电池中)中定义的 OCaml 中是否有一个中缀函数组合运算符,如 Haskell 中的 (.) 函数,它为我们节省了很多括号,因为我们可以编写 (f . g . h) x而不是不那么吸引人的f (g (h x))) .

谢谢各位。

最佳答案

我只想补充一点,该运算符相当容易包含,在 F# 中它被简单地定义为:

let (<<) f g x = f(g(x));;

具有类型签名: val ( << ) : f:('a -> 'b) -> g:('c -> 'a) -> x:'c -> 'b做你需要的...
(f << g << h) x = f(g(h(x))

所以如果你不需要,你就不需要电池项目

我想补充一下它看起来像 << 的原因正如您可能猜到的那样,因为 >>运算符(operator)做相反的事情:
let (>>) f g x = g(f(x));;

(f >> g >> h) x = h(g(f(x))

关于ocaml - OCaml 中是否有中缀函数组合运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16637015/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com