【发布时间】:2017-02-02 21:44:37
【问题描述】:
Racket 提供了一个 language extension 用于惰性评估,它只需要在某个文件的开头有一个 #lang lazy 标头即可更改整个文件的评估策略。
但是,这种标准方法只允许课程级别的粒度;需要一种更精细的方法来将惰性求值限制在某个定义的范围内。
Racket 是否提供了一些标准方法来将惰性评估策略限制在某个范围内?我正在寻找类似以下的东西:
(eval-lazy (+ 2 2)) ;; only available by explicit or implicit call-by-need
【问题讨论】: