gpt4 book ai didi

ruby - 如何用一个参数柯里化(Currying)一个方法

转载 作者:太空宇宙 更新时间:2023-11-03 18:23:10 26 4
gpt4 key购买 nike

这是我的代码:

def f x
x
end

g = method(:f).to_proc.curry.(123)

p g

我希望 g 是一个不带参数并将 123 应用于 f 的可调用对象。相反,g 包含应用程序的结果。

我这样做是否复杂?

编辑:是的,g = lambda {f 123} 有效,但我想问的是如何 curry f

最佳答案

documentation for curry说是

If a sufficient number of arguments are supplied, it passes the supplied arguments to the original proc and returns the result.

所以在这种情况下,您并没有真正从理论的角度柯里化(Currying)您的函数,但实际上您已经柯里化(Currying)了。

g = lambda {f 123}

似乎更接近于返回一个函数的精神,您可以调用该函数进行求值,至少在确定所有参数后。

关于ruby - 如何用一个参数柯里化(Currying)一个方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14778192/

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