[plt-scheme] swindle: (define (values a b) (values 1 2))

From: Eli Barzilay (eli at barzilay.org)
Date: Sat Sep 17 14:04:25 EDT 2005

On Sep 17, jos koot wrote:
> Thanks for your reply. You wrote:
> > (Judging by the `(define a (+ a 1000))', you seem to be attached to
> > the top-level behavior...)
> Not necessarily. My examples did not include `(define a (+ a
> 1000))',

They had

  (define (values a b) (begin (void) (old-values (+ a 100) (+ b 100))))

which is the same.

> but this is not relevant. Include my examples in (let () ...) and my
> argument still holds, I think

In a (let () ...) context, things are even more organized.  A
definition of `a' that uses the "old" value of `a' will not work at

          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!

Posted on the users mailing list.