[racket] TLS "atom?" definition for Scheme does not work in DrRacket

From: Alexander D. Knauth (alexander at knauth.org)
Date: Thu Mar 5 07:31:03 EST 2015

On Mar 5, 2015, at 12:21 AM, Rufus <rlaggren at mail.com> wrote:

> Alex
> 
> Yes, that is what happens. (with BSL)

Ok, does it show that (or a similar message about not being able to re-define add1)
for your original program with BSL?  

> But if I remove the erroneous
> (define and...) then it again flags pair? as "function not defined". I
> think maybe it only prints one error msg, the last one found.

For this:
(pair? #f)
(define and 'dummy)
It reports the and error, but for this:
(define and 'dummy)
(pair? #f)
It also reports the and error.  
The and error is found and reported first because it checks that definitions
are valid before it checks that functions like pair? exist.  
If that weren’t the case mutual recursion couldn't work the way it does
without needing foreword declarations. (I think)




Posted on the users mailing list.