On this page:
Macros and Languages in Racket

Macros and Languages in Racket

Ryan Culpepper <ryanc@racket-lang.org>

    Preliminaries

    1 Basic Macrology

      1.1 Your First Macro

      1.2 Basic Macro Facts

      1.3 Auxiliary Variables and Hygiene

      1.4 Binding Forms

      1.5 Changing an Expression’s Dynamic Context

      1.6 Keep Macros Simple

      1.7 Ellipsis Patterns and Templates

      1.8 Ellipses with Complex Patterns

      1.9 Recursive Macros

      1.10 Matching Literal Identifiers

      1.11 Helper Macros and Private Variables

      1.12 Basic Macrology Review

    2 Specifying and Validating Syntax

      2.1 Basic Syntax Validation

      2.2 Context-Sensitive Validation

      2.3 Validating Syntax using syntax-case

    3 Solutions for Selected Exercises

      3.1 Solution for Exercise 3

      3.2 Solution for Exercise 7

      3.3 Solution for Exercise 13

      3.4 Solution for Exercise 17

      3.5 Solution for Exercise 18

    4 More Topics to Cover