是否可以告诉OCaml编译器内联函数,而不是希望其优化过程自己这样做?
你们都可以添加一个属性来始终内联函数
let f x = x [@@inline always]
(* which is equivalent to *)
let f x = x [@@inline]
或强制特定调用与另一个属性内联
let a = (f[@inlined]) 1
如果要检查 flambda 做出的内联决策,可以使用 inlining-report
标志。