Building language towers with Ziggurat

14Citations
Citations of this article
20Readers
Mendeley users who have this article in their library.

Abstract

Ziggurat is a meta-language system that permits programmers to develop Scheme-like macros for languages with nontrivial static semantics, such as C or Java (suitably encoded in an S-expression concrete syntax). Ziggurat permits language designers to construct 'towers' of language levels with macros; each level in the tower may have its own static semantics, such as type systems or flow analyses. Crucially, the static semantics of the languages at two adjacent levels in the tower can be connected, allowing improved reasoning power at a higher level to be reflected down to the static semantics of the language level below. We demonstrate the utility of the Ziggurat framework by implementing higher level language facilities as macros on top of an assembly language, utilizing static semantics such as termination analysis, a polymorphic type system and higher order flow analysis. © 2008 Cambridge University Press.

Cite

CITATION STYLE

APA

Fisher, D., & Shivers, O. (2008). Building language towers with Ziggurat. In Journal of Functional Programming (Vol. 18, pp. 707–780). https://doi.org/10.1017/S0956796808006928

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free