This section leads you through the basic operation of the macro stepper.
To launch the macro stepper, click the “Macro Stepper” button on the DrScheme toolbar.
The macro stepper is only available for the following language levels:
Textual (MzScheme, includes R5RS)
Graphical (MrEd, includes MzScheme)
Pretty Big (includes MrEd and Advanced Student)
The macro stepper button is hidden for all other languages.
You can also run the macro stepper from a Scheme program. See the Help Desk for the API.
The macro stepper presents expansion as a rewriting process on programs. Each rewriting step corresponds to the transformation of a macro use into its expansion.1 For each rewriting step, the stepper displays both the term before the step and the term after the step. It highlights the macro use in the “before” term (the redex) and the result of the macro transformation in the “after” term.
You navigate forward and backward through the expansion process by using the navigation buttons at the top of the macro stepper frame. When your program consists of multiple top-level definitions or expressions, the macro stepper also provides “Previous term” and “Next term” buttons to go up and down in the terms of your program.
1 There are other kinds of rewriting steps, too.