4
let (++) f g x = f (g x) in
    let f x = x + 1 in
    let g x = x * 2 in
    (f++g) 1;;
  1. 上面的表述正确吗?
  2. 在我看来,上面的代码应该就像定义f++g x = 2 * x + 1. 我对么?
4

1 回答 1

4

您对函数组合的实现是正确的,因为:

(g ∘ f)(x) = g(f(x)) 对于 X 中的所有 x

根据维基百科

我得到:

- : int = 3

在 ocamlktop

于 2012-12-03T17:38:48.437 回答