let f a b = a * b
let y = f 1 2
let y' = (f 1) 2
//请注意, f 1 2 和 (f 1) 2 的浅层语义是不同的。
//后者表示 (fun b -> f 1 b) 2, 换言之:
let tmp b = f 1 b
let y'' = tmp 2
let g a b c = a * b * c
let z1 = g 1 2 3
let z2 = (g 1) 2 3
let z3 = (g 1 2) 3
let z4 = ((g 1) 2) 3
// z1 = z2 = z3 = z4