F中的C#lambda(>;)语法#

F中的C#lambda(>;)语法#,c#,syntax,lambda,f#,operator-overloading,C#,Syntax,Lambda,F#,Operator Overloading,是否可以在F#中定义=>运算符,使其行为类似于C#的lambda语法?这将允许一个人写作 x => y 而不是 fun x -> y 我是一个F#初学者,我的直觉告诉我这是不可能的,因为fun看起来像一种特殊的形式 不,这是不可能的,因为lambda操作符绑定了一个变量(左侧是一个变量,或任何模式匹配,而不是对应于值的表达式),解析器对其进行了特殊处理。不,这是不可能的,因为lambda操作符绑定了一个变量(左侧是变量或任何模式匹配,而不是对应于值的表达式)语法分析器对它进行了特

是否可以在F#中定义=>运算符,使其行为类似于C#的lambda语法?这将允许一个人写作

x => y
而不是

fun x -> y

我是一个F#初学者,我的直觉告诉我这是不可能的,因为
fun
看起来像一种特殊的形式

不,这是不可能的,因为lambda操作符绑定了一个变量(左侧是一个变量,或任何模式匹配,而不是对应于值的表达式),解析器对其进行了特殊处理。

不,这是不可能的,因为lambda操作符绑定了一个变量(左侧是变量或任何模式匹配,而不是对应于值的表达式)语法分析器对它进行了特殊处理。

更不用说C#没有更多的仪式就无法编译。更不用说C#没有更多的仪式就无法编译。在F#中,fun不是可选的,但是对于你给出的
fun x->x
这个例子,你可以使用
id
这个身份函数。我已经更新了e在F#中,fun不是可选的,但是对于你给出的
fun x->x
这个身份函数,你可以使用
id
很好。我更新了这个例子,这样读者就不会认为我只关心它了。