Scheme语言中的无限列表

2018-10-17  本文已影响15人  DarkBubble

根据SICP一书中所说的,在Scheme语言中通过延迟解析和强制求值来实现无限列表。

(define head car)
(define (tail xs) ((cdr xs)))

(define (from x next) (cons x (lambda () (from (next x) next))))

上述的from过程即可实现无限列表。

在Scheme中还提供了delayforce解决了避免多次求值的情况,具体写法略。

上一篇下一篇

猜你喜欢

热点阅读