R5RS 说……
值可能定义如下:
(define (values . things) (call-with-current-continuation (lambda (cont) (apply cont things))))
然而,它并没有说明如果以这种方式实现值,那么如何实现 call-with-values。那么,如果以这种方式实现值,将如何实现 call-with-values 呢?
(出现这种情况是因为我试图让一些使用带值调用的代码与不支持它的 TinyScheme 一起工作。我通过伪造值和带列表的带值调用来管理,但是——当我看到这在 R5RS 中——我想知道这是否是一个更好的解决方法。)