我正在尝试按照eq?
下面给出的 Little Schemer 示例来实现柯里化。eq( test, testFor)
接受一个测试条件和一个原子,并根据传递的函数返回一个函数,该函数test
接受一个参数来返回一个布尔值。
这是我的代码:
def eq( test, s)
Proc.new { |x| test(s,x)}
end
eqToCarrot = eq(Proc.new{|x,y| x==y},"carrot")
if eqToCarrot.call("carrot")
puts "Equal!"
end
if 条件不执行。有人能告诉我为什么吗?