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
22 weeks 4 days ago
22 weeks 4 days ago
22 weeks 4 days ago
44 weeks 5 days ago
49 weeks 11 hours ago
50 weeks 4 days ago
50 weeks 4 days ago
1 year 1 week ago
1 year 5 weeks ago
1 year 5 weeks ago