A Theory of Typed Hygienic Macros, a dissertation by
Dave Herman
We present the lambda_m-calculus, a semantics for a language of hygienic macros
with a non-trivial theory. Unlike Scheme, where programs must be macro-expanded
to be analyzed, our semantics admits reasoning about programs
as they appear to programmers. Our contributions include a semantics of
hygienic macro expansion, a formal definition of α-equivalence that is independent
of expansion, and a proof that expansion preserves α-equivalence.
The key technical component of our language is a type system similar to
Culpepper and Felleisen's "shape types," but with the novel contribution of
binding signature types, which specify the bindings and scope of a macro’s
arguments.
Recent comments
44 min 40 sec ago
1 hour 57 min ago
2 hours 25 sec ago
2 hours 9 min ago
10 hours 11 min ago
11 hours 50 min ago
12 hours 34 min ago
12 hours 36 min ago
13 hours 28 min ago
13 hours 43 min ago