我正在复习我的低球拍知识,并在球拍出色的帖子中遇到了这个流。我的问题是关于这个片段:
(define powers-of-two
(letrec ([f (lambda (x) (cons x (lambda () (f (* x 2)))))])
(lambda () (f 2))))
我理解“内部 lambdas”的原因,但为什么 OP 对整个函数使用 lambda?难道不能像这样有效地完成吗?
(define (powers-of-two)
(letrec ([f (lambda (x) (cons x (lambda () (f (* x 2)))))])
(f 2)))
我进行了实验,没有发现任何区别。我的问题是这是否只是风格问题,或者是否有某种理由认为前者更可取。