At Sun, 19 Jul 2015 15:46:07 -0700, Alexis King wrote: > One more thing: introducing a new scope with make-syntax-introducer seems to > break DrRacket’s Check Syntax arrows for the whole module.
That makes sense in retrospect. Adding an extra scope makes `syntax-original?` produce #f for everything in whole module, and that makes DrRacket ignore the identifiers. I think `make-syntax-introducer` should probably accept an optional argument to specify that the new scope should *not* indicate non-original syntax. > 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. I don't know yet, either, but I'll investigate. -- 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/20150720131606.2FA846501DD%40mail-svr1.cs.utah.edu. For more options, visit https://groups.google.com/d/optout.
