我目前正在阅读 Real-World Functional Programming,它简要提到了 in-fix 运算符是自定义运算符的主要好处之一。在 F# 中何时使用或不使用自定义运算符是否有任何标准?我正在寻找与此等效的答案。
作为参考,这里是@JohnPalmer 从这里引用的引用:
3.8 算子定义</p>
避免在面向 F# 的库设计中定义自定义符号运算符。
自定义运算符在某些情况下是必不可少的,并且在大量实现代码中是非常有用的符号设备。对于库的新用户,命名函数通常更易于使用。此外,自定义符号运算符可能难以记录,并且由于 IDE 和搜索引擎的现有限制,用户发现查找运算符的帮助更加困难。
因此,通常最好将您的功能发布为命名函数和成员。