MetaML and Multi-Stage Programming with Explicit Annotations (1999)
Cached
Download Links
- [cse.ogi.edu]
- [www-internal.cse.ogi.edu]
- [www.cs.chalmers.se]
- [cse.ogi.edu]
- [cse.ogi.edu]
- [www.cse.ogi.edu]
- [cs-www.cs.yale.edu]
- DBLP
Other Repositories/Bibliography
| Venue: | Theoretical Computer Science |
| Citations: | 201 - 30 self |
BibTeX
@INPROCEEDINGS{Taha99metamland,
author = {Walid Taha and Tim Sheard},
title = {MetaML and Multi-Stage Programming with Explicit Annotations},
booktitle = {Theoretical Computer Science},
year = {1999},
pages = {203--217},
publisher = {ACM Press}
}
Years of Citing Articles
OpenURL
Abstract
. We introduce MetaML, a practically-motivated, staticallytyped multi-stage programming language. MetaML is a "real" language. We have built an implementation and used it to solve multi-stage problems. MetaML allows the programmer to construct, combine, and execute code fragments in a type-safe manner. Code fragments can contain free variables, but they obey the static-scoping principle. MetaML performs typechecking for all stages once and for all before the execution of the first stage. Certain anomalies with our first MetaML implementation led us to formalize an illustrative subset of the MetaML implementation. We present both a big-step semantics and type system for this subset, and prove the type system's soundness with respect to a big-step semantics. From a software engineering point of view, this means that generators written in the MetaML subset never generate unsafe programs. A type system and semantics for full MetaML is still ongoing work. We argue that multi-...







