Strictification of circular programs

João Paulo Fernandes, João Saraiva, Daniel Seidel, Janis Voigtländer

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Circular functional programs (necessarily evaluated lazily) have been used as algorithmic tools, as attribute grammar implementations, and as target for program transformation techniques. Classically, Richard Bird [1984] showed how to transform certain multi-traversal programs (which could be evaluated strictly or lazily) into one-traversal ones using circular bindings. Can we go the other way, even for programs that are not in the image of his technique? That is the question we pursue in this paper. We develop an approach that on the one hand lets us deal with typical examples corresponding to attribute grammars, but on the other hand also helps to derive new algorithms for problems not previously in reach.

Original languageEnglish (US)
Title of host publicationPERM'11 - Proceedings of the 20th ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation
Pages131-140
Number of pages10
DOIs
StatePublished - 2011
Event20th ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, PEPM'11 - Austin, TX, United States
Duration: Jan 24 2011Jan 24 2011

Publication series

NamePERM'11 - Proceedings of the 20th ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation

Conference

Conference20th ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, PEPM'11
Country/TerritoryUnited States
CityAustin, TX
Period1/24/111/24/11

Keywords

  • Program transformation

ASJC Scopus subject areas

  • Computer Graphics and Computer-Aided Design
  • Computer Science Applications

Fingerprint

Dive into the research topics of 'Strictification of circular programs'. Together they form a unique fingerprint.

Cite this