在下面的代码片段中,我看不出为什么我必须编写f和g函数的方式foo以及为什么它不能像函数bar尝试那样工作.
let f a b = a,b
let g (a : 'a) (b : 'a) = a
let (>!) f1 f2 =
fun a b ->
let (x,y) = f1 a b
f2 x y
let foo = fun a b -> (f >! g) a b
let bar = f >! g
Run Code Online (Sandbox Code Playgroud)
任何人都可以向我解释,为什么bar不工作?鉴于它foo也具有通用类型,对我来说没有任何意义.
f# ×1