具有反向语法的函数组合
如果我想首先应用 f
,然后应用 g
,我必须这样写:
g . f
是否有另一种标准语法允许我以相反的顺序编写函数?
f <whatever> g
我知道我可以发明自己的语法:
compose f g x = g (f x)
然后像这样使用它:
f `compose` g
但我宁愿使用标准库设施。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
f>>>> g
来自 控制.箭头。f >>> g
from Control.Arrow.除了
>>>
之外,一些库还提供了自己的此函数版本,例如:.>
href="https://hackage.haskell.org/package/flow-2.0.0.0/docs/Flow.html#v:compose" rel="nofollow noreferrer">流程。-.
来自组合前奏。您可以使用 Hoogle 查找具有特定签名的函数示例。对于您的确切问题,您可以使用 hoogle.haskell.org/?hoogle=(a -> b) -> (b→c)→ (a -> c)。
In addtition to
>>>
, some libraries provide their own version of this function, for example:compose
or.>
from Flow.-.
from composition-prelude.You may use Hoogle to find examples of functions with a specific signature. For your exact question you can use hoogle.haskell.org/?hoogle=(a -> b) -> (b -> c) -> (a -> c).