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
32 weeks 6 days ago
32 weeks 6 days ago
32 weeks 6 days ago
1 year 2 weeks ago
1 year 7 weeks ago
1 year 8 weeks ago
1 year 8 weeks ago
1 year 11 weeks ago
1 year 16 weeks ago
1 year 16 weeks ago