是 Haskell 的美元 $ 运算符,还是 F# 的反向管道 <| 同样的想法?

Lyn*_*ite 1 f# haskell

自从我使用 F# 已经好几年了,现在我正在尝试学习一些 Haskell,并找出我可以转移的想法。

bra*_*drn 10

是的——它们是等价的。我不知道 F#,但在 Haskell 中,这个运算符经常用于简化长括号表达式: 的优先级$低于任何其他运算符的优先级,因此 egf x + y被解释为(f x) + y,但f $ x + y被解释为f (x + y)。类似地,一个长链f (g (h x))可以写成f $ g $ h x

查看F# 运算符列表,这里有更多对应关系可以帮助您:

  • F# f << g? 哈斯克尔f . g
  • F# ::? Haskell :,而 F# :?哈斯克尔::
  • F# <>? 哈斯克尔/=
  • F#|>>>没有任何相应的运营商Prelude-我希望他们做到了!但是如果需要,您可以使用Data.Function.&Control.Category.>>>替换它们。
  • (如果我找到的话,会再添加一些;如果有人要添加到此列表中,请随时发表评论!)