gpt4 book ai didi

需要 Haskell 柯里化(Currying)解释

转载 作者:行者123 更新时间:2023-12-03 13:35:21 24 4
gpt4 key购买 nike

我试图理解柯里化(Currying)的概念,然后去了 Haskell documentation .但是,它说

f is the curried form of g



然而 f 有两个参数,而 g 只有一个。由于currying正在将一个接受多个参数的函数转换为一个接受一个参数并返回另一个函数的函数,'g'不应该是curried函数吗?

从haskell文档

Currying is the process of transforming a function that takes multiple arguments into a function that takes just a single argument and returns another function if any arguments are still needed.


f :: a -> b -> c
is the curried form of
g :: (a, b) -> c

所以这对我来说似乎是矛盾的,我也没有看到这两个函数中的任何一个都返回一个函数。

最佳答案

类型a -> b -> c实际上是 a -> (b -> c) .

所以f不接受两个参数,类型为 ab并返回 c ,它需要一个 a 类型的参数, 并返回 b -> c , 来自 b 的函数至c .

关于需要 Haskell 柯里化(Currying)解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51963290/

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