当前位置:  开发笔记 > 编程语言 > 正文

F#style - prefer()或<|

如何解决《F#style-prefer()或<|》经验,为你挑选了1个好方法。

您发现自己最常使用哪两种替代品,哪种更"惯用"?

    f arg(obj.DoStuff())

    f arg <| obj.DoStuff()

Brian.. 5

总的来说,我不知道其中一个是更惯用的.

就个人而言,我唯一一次使用<| 是"加薪":

raise <| new FooException("blah")

除此之外,我总是使用parens.请注意,由于大多数F#代码使用curried函数,因此通常不会暗示任何"额外"的parens:

f arg (g x y)

当你进入非curried函数和构造函数时,它开始变得不那么漂亮了:

f arg (g(x,y))

我们可能至少会考虑更改F#语言规则,以便高优先级应用程序更紧密地绑定; 马上

f g()

解析像

f g ()

但是很多人都希望它能够解析为

f (g())

(原始问题中的激励案例).如果您对此有强烈意见,请对此回复发表评论.



1> Brian..:

总的来说,我不知道其中一个是更惯用的.

就个人而言,我唯一一次使用<| 是"加薪":

raise <| new FooException("blah")

除此之外,我总是使用parens.请注意,由于大多数F#代码使用curried函数,因此通常不会暗示任何"额外"的parens:

f arg (g x y)

当你进入非curried函数和构造函数时,它开始变得不那么漂亮了:

f arg (g(x,y))

我们可能至少会考虑更改F#语言规则,以便高优先级应用程序更紧密地绑定; 马上

f g()

解析像

f g ()

但是很多人都希望它能够解析为

f (g())

(原始问题中的激励案例).如果您对此有强烈意见,请对此回复发表评论.

推荐阅读
和谐啄木鸟
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有