
This library is used by Redex, which wants a `syntax'-like template language, but for datum values instead of syntax objects. Using `datum-case' and `datum' generates much less code. Redex uses only a small part of the general functionality, so adding `syntax/datum' could be overkill. It's implemented by generalizing the `syntax-case' and `syntax' pattern matching and template constructing code, though; it's not a lot of extra code, and it's easiest to generalize completely. We may find other uses for datum templates, too.
29 lines
521 B
Racket
29 lines
521 B
Racket
#lang scribble/doc
|
|
@(require "common.rkt")
|
|
|
|
@title{Syntax: Meta-Programming Helpers}
|
|
|
|
@table-of-contents[]
|
|
|
|
@include-section["parse.scrbl"]
|
|
|
|
@include-section["syntax-object-helpers.scrbl"]
|
|
|
|
@include-section["datum.scrbl"]
|
|
|
|
@include-section["module-helpers.scrbl"]
|
|
|
|
@include-section["transformer-helpers.scrbl"]
|
|
|
|
@include-section["reader-helpers.scrbl"]
|
|
|
|
@include-section["srcloc.scrbl"]
|
|
|
|
@include-section["toplevel.scrbl"]
|
|
|
|
@include-section["trusted-xforms.scrbl"]
|
|
|
|
@include-section["docprovide.scrbl"]
|
|
|
|
@index-section[]
|