对于F#中的大多数运算符,我可以使用前缀或中缀表示法,例如:
let x = a + b
Run Code Online (Sandbox Code Playgroud)
相当于
let x = (+) a b
Run Code Online (Sandbox Code Playgroud)
但这不适用于指数运算符**,因为括号内的版本被视为注释.也就是说,(*这是注释*)是注释的F#语法,因此(**)被视为空注释.
let x = a ** b   // a raised to b
let x = (**) a b // empty comment, followed by function a applied to b
Run Code Online (Sandbox Code Playgroud)
有没有我可以使用的逃脱角色,或者这只是一种奇怪的语言怪癖?