I don't have a comprehensive answer, but, in this case, `define` comes from
`racket/base`, but the initial import of `racket/base` into the submodule
has macro-introduced scope, so it isn't visible to the `form`s. It is the
same principle as why this doesn't work:
#lang racket
(define-syntax-rule
Hi Racketeers.
I'm writing some macro code that generates submodules. I'm not entirely
sure how hygiene is maintained when creating submodules, and now I have
little idea why my macros are doing the crazy things that they are. Could
anyone give a concrete explanation on how modules work with
2 matches
Mail list logo