Program logics for homogeneous meta-programming

10Citations
Citations of this article
9Readers
Mendeley users who have this article in their library.
Get full text

Abstract

A meta-program is a program that generates or manipulates another program; in homogeneous meta-programming, a program may generate new parts of, or manipulate, itself. Meta-programming has been used extensively since macros were introduced to Lisp, yet we have little idea how formally to reason about meta-programs. This paper provides the first program logics for homogeneous meta-programming - using a variant of MiniMLe□ by Davies and Pfenning as underlying meta-programming language. We show the applicability of our approach by reasoning about example meta-programs from the literature. We also demonstrate that our logics are relatively complete in the sense of Cook, enable the inductive derivation of characteristic formulae, and exactly capture the observational properties induced by the operational semantics. © 2010 Springer-Verlag.

Cite

CITATION STYLE

APA

Berger, M., & Tratt, L. (2010). Program logics for homogeneous meta-programming. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 6355 LNAI, pp. 64–81). https://doi.org/10.1007/978-3-642-17511-4_5

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