Macros as multi-stage computations: type-safe, generative, binding macros in MacroML
Proceedings of the sixth ACM SIGPLAN international conference on Functional programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
Hi-index | 0.00 |
This report presents the basic definitions and formal development of DALI, a novel extension of the CBV lambda calculus. DALI is based on a proposal by Miller, and provides an elegant and well-behaved notion of object-variables. The notion is elegant because it avoids any explicit need for "gensym" or "newname" operation that is often needed in such systems.The notion is well-behaved in that it induces a computationally adequate equational theory. Our development follows the one employed in Taha''s thesis for MetaML. The development was easy to adapt, and some of the major lemmas and proofs remained essentially unchanged. This sucess is further evidence o fthe robustness of both the observations of Takahashi on the notion of parallel reduction and the original "standardization" development by Plotkin for the CBV and CBN lambda calculus.