我正在学习Scheme语言(我自己)。最近我遇到了这个问题: 有两个函数计算相同的值(组合函数f - n次)。Sceme递归的类型
(define (repeated f n)
(lambda (x)
(if (= n 1)
(f x)
(f ((repeated f (- n 1)) x)))))
(define (repeated f n)
(if (= n 1)
f
(lambda (x)
(f ((repeated f (- n 1)) x)))))
据我了解,这两个不是递归过程,但他们返回递归过程(lol)。那么这两者有什么区别呢?即使在我给X赋值之前,第一个返回已经计算好的过程有可能吗?我很困惑...请帮助。
两者都只是更高阶的函数(因为它们返回一个函数)。从概念上说,他们试图代表的是 – Ankur
谢谢。然而,奥斯卡洛佩斯确实指出了两者之间的一些细微差别。 – Aladin