Dear Marc,
As I got it, R5RS has no particular requirement here, while R7RS requires sequential evaluation order i.e. that
(let () (define a #t) (define b a) b) always evaluates to #t , and
(let () (define b a) (define a #t) b) always evaluates to #!unbound .
Comically enough, when I evaluate the above in Gambit,
in interpreted mode, I get #!unbound for both,
and in compiled mode, I get #t for both.
What's the rule and underlying though here?
Thanks,
Mikael