One more thing: introducing a new scope with make-syntax-introducer seems to 
break DrRacket’s Check Syntax arrows for the whole module. I don’t understand 
exactly how DrRacket’s arrows work, but my preliminary debugging in the macro 
stepper has left me a little confused.

Whether I’m using curly-fn or plain racket/base, I’ve found that the “marks” 
the macro stepper displays on some identifiers for a simple program to be 
confusing. I wrote a simple test program:

   (define foo #f)
   foo

And I inspected the marks on each `foo` identifier throughout the expansion 
process.

I found that in every single step, both `foo` identifiers had the same two 
marks, as I expected. However, in the very last step (the step that supposedly 
doesn’t do anything, when it just says “Expansion finished”), the second `foo` 
identifier mysteriously changed and gained two extra marks. I have no idea why.

Sorry for all my questions, but I’m quite curious about how this process works, 
but the information my debugging has provided has seemed confusing and 
unintuitive thus far.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/racket-dev/4D3B0EB2-4D84-4ECF-BABB-37866C2844A8%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to