17.3 Defining new #lang Languages
When loading a module as a source program that starts
the language determines the way that the rest of the module is parsed at the reader level. The reader-level parse must produce a module form as a syntax object. As always, the second sub-form after module specifies the module language that controls the meaning of the module’s body forms. Thus, a language specified after #lang controls both the reader-level and expander-level parsing of a module.