HAL will be down for maintenance from Friday, June 10 at 4pm through Monday, June 13 at 9am. More information
Skip to Main content Skip to Navigation

A language and an Integrated Environment for Program Transformations

Abstract : We present the TrfL language, a rule-based language designed for program transformations. For the end-user, TrfL is intended to support both direct manipulation in an interactive setting and automated execution in a stand-alon- e context. For the designer, the TrfL language features a high-level expressiv- e power based on powerful patterns, pre-conditions and post-actions, access to contextual information such as symbol tables or dataflow graphs, and functional composition of transformations. For the designer, we also provide an interactive environment for program transformations based on Centaur. This integrated environment makes it possible to build transformation rules by selection of syntax patterns of the object language and to automatically generate the TrfL source code. Static typechecking of TrfL rules is provided, to ensure correct construction of patterns, appropriate use of variables, and visibility rules in a program. Among numerous application domains (legacy code problems, static optimizations, parallelizations), we propose in this article a complete example based on partial evaluation techniques on a toy imperative language. Our final goal, with a formal description of the transformations, besides its interest per se, is to be able to provide tools for proving the correctness of the transformations, as well as other important properties (such as confluence, termination, etc).
Document type :
Complete list of metadata

Cited literature [1 references]  Display  Hide  Download

Contributor : Rapport de Recherche Inria Connect in order to contact the contributor
Submitted on : Wednesday, May 24, 2006 - 12:39:30 PM
Last modification on : Friday, February 4, 2022 - 3:18:40 AM
Long-term archiving on: : Sunday, April 4, 2010 - 9:16:05 PM


  • HAL Id : inria-00073376, version 1



Isabelle Attali, Valérie Pascual, Christophe Roudet. A language and an Integrated Environment for Program Transformations. RR-3313, INRIA. 1997. ⟨inria-00073376⟩



Record views


Files downloads