Implementing circularity using partial evaluation
Publikation: Bidrag til bog/antologi/rapport › Konferencebidrag i proceedings › Forskning › fagfællebedømt
Complex data dependencies can often be expressed concisely by defining a variable in terms of part of its own value. Such a circular reference can be naturally expressed in a lazy functional language or in an attribute grammar. In this paper, we consider circular references in the context of an imperative C-like language, by extending the language with a new construct, persistent variables. We show that an extension of partial evaluation can eliminate persistent variables, producing a staged C program. This approach has been implemented in the Tempo specializer for C programs, and has proven useful in the implementation of run-time specialization.
Originalsprog | Engelsk |
---|---|
Titel | Proceedings of the Second Symposium on Programs as Data Objects |
Forlag | Springer |
Publikationsdato | 2001 |
Sider | 84-102 |
ISBN (Trykt) | 978-3-540-42068-2 |
DOI | |
Status | Udgivet - 2001 |
Begivenhed | Programs as data objects - Århus, Danmark Varighed: 29 nov. 2010 → … Konferencens nummer: 2 |
Konference
Konference | Programs as data objects |
---|---|
Nummer | 2 |
Land | Danmark |
By | Århus |
Periode | 29/11/2010 → … |
ID: 15196537