具有反向语法的函数组合

发布于 2024-12-01 09:27:12 字数 324 浏览 1 评论 0 原文

如果我想首先应用 f ,然后应用 g ,我必须这样写:

g . f

是否有另一种标准语法允许我以相反的顺序编写函数?

f <whatever> g

我知道我可以发明自己的语法:

compose f g x = g (f x)

然后像这样使用它:

f `compose` g

但我宁愿使用标准库设施。

If I want to apply f first and g second, I have to write:

g . f

Is there another standard syntax that would allow me to write the functions in the reverse order?

f <whatever> g

I know I can just invent my own syntax:

compose f g x = g (f x)

and then use it like this:

f `compose` g

But I would rather use a standard library facility.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

汹涌人海 2024-12-08 09:27:12

f>>>> g 来自 控制.箭头

f >>> g from Control.Arrow.

谎言 2024-12-08 09:27:12

除了 >>> 之外,一些库还提供了自己的此函数版本,例如:

您可以使用 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:

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).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文