Symbolic Composition

Abstract : The deforestation of a functional program is a transformation which gets rid ofintermediate data structures constructions that appear when two functions are composed. The descriptional composition, initially introduced by Ganzinger and Giegerich, is a deforestation method dedicated to the composition of two attribute grammars. This article presents a new functional deforestation technique, called symbolic composition, based on the descriptional composition mechanism, but extending it. An automatic translation from a functional program into an equivalent attribute grammar allows symbolic composition to be applied, and then the result can be translated back into a functional program. This yields a sourceto source functional program transformation. The resulting deforestation method provides a better deforestation than other existing functional techniques. Symbolic composition, that uses the declarative and descriptional features of attribute grammars is intrinsically more powerful than categorical-flavored transformations, whose recursion schemes are set by functors. These results tend to show that attribute grammars are a simple intermediate representation, particularly well-suited for program transformations.
Document type :
Reports
Complete list of metadatas

https://hal.inria.fr/inria-00073341
Contributor : Rapport de Recherche Inria <>
Submitted on : Wednesday, May 24, 2006 - 12:35:01 PM
Last modification on : Friday, May 25, 2018 - 12:02:05 PM
Long-term archiving on : Sunday, April 4, 2010 - 11:43:08 PM

Identifiers

  • HAL Id : inria-00073341, version 1

Citation

Loïc Correnson, Étienne Duris, Didier Parigot, Gilles Roussel. Symbolic Composition. [Research Report] RR-3348, INRIA. 1998. ⟨inria-00073341⟩

Share

Metrics

Record views

336

Files downloads

425