只是一个简单的问题.我想知道在标准库(或在Jane Street的核心或电池中)中定义的OCaml中是否存在中缀函数组合运算符,就像Haskell中的(.)函数一样,它为我们节省了很多括号,因为我们可以编写(f . g . h) x而不是不太吸引人f (g (h x))).
谢谢大家.
在获取Array,List或Seq的第N个元素的函数中有不同的参数顺序是否有充分的理由:
Array.get source index
List .nth source index
Seq .nth index source
Run Code Online (Sandbox Code Playgroud)
我想使用管道运算符,它似乎只能用Seq:
s |> Seq.nth n
Run Code Online (Sandbox Code Playgroud)
有没有办法与Array或List使用相同的表示法?
如何为非对称运算符(例如模数运算符)创建一个部分函数应用程序,关于F#中没有任何参数名称的第一个参数?我的第一次尝试是
let mod10 = (%) 10 这当然转化为
mod10(x) = 10 mod x 而不是期望的
mod10(x) = x mod 10.当然我可以写
let mod10 x = (%)x 10 但是我不想为这个论点命名,所以有一些可以使用的占位符,比如说
let mod10 = (%)_ 10?