标签: scala haskell f# functional-programming
F#有管道运营商:
arg |> func // or arg2 |> func arg1, as opposed to func arg1 arg2 func <| arg
Haskell有$运算符:
$
func $ arg -- or func1 $ func2 arg, as opposed to func1 (func2 arg)
它们主要用于通过去除函数调用来提高可读性。
Scala中是否有类似的运算符?
答案 0 :(得分:12)
没有。但是,您可以轻松定义自己的。
implicit class PipeEverything[A](val underlying: A) extends AnyVal { def |>[B](f: A => B) = f(underlying) }
答案 1 :(得分:0)
Scala在标准库中没有此运算符。
Scalaz带了画眉运算符:
arg |> method
与Scalaz相比,如果您更喜欢Cats,则需要Mouse随播库才能获得相同的运算符。