我有代码
(define (add-ten s)
(let ([f (lambda(s) ((cons 10 (car (s))) (cdr (s))))])
(f s)))
s 可能是类似权力的流
(define powers (letrec ([f (lambda (x) (cons x (lambda () (f (* x 2)))))])
(lambda () (f 2))))
我的功能
(result-for-n-times powers 5)
给出'(2 4 8 16 32)。
现在,我想定义一个流(加十),它可以获取流的权力并提供另一个流。所以,如果我称之为
(result-for-n-times (add-ten powers) 5)
将给出'((10. 2) (10. 4) (10. 8) (10. 16) (10. 32))。