gpt4 book ai didi

haskell - `flip id` 是如何工作的?

转载 作者:行者123 更新时间:2023-12-02 05:41:44 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Why does Haskell's "flip id" has this type?

(1 个回答)


6年前关闭。




为什么是 flip id接受为有效表达?它不应该在 a 的类型检查中失败吗?反对 b -> c ?

Prelude> :t flip
flip :: (a -> b -> c) -> b -> a -> c
Prelude> :t id
id :: a -> a
Prelude> :t flip id
flip id :: b -> (b -> c) -> c

最佳答案

重点是

id :: a -> a

适用于任何类型 a ,包括函数类型。即我们可以选择 a = (b -> c)并获得
id :: (b -> c) -> (b -> c)

其中,因为 ->右侧的关联,通常写为
id :: (b -> c) -> b -> c

上面的可以解释为一个带有两个参数的函数:第一个类型 b -> c和第二个类型 b .所以我们可以 flip它。

关于haskell - `flip id` 是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29489905/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com