A language and an Integrated Environment for Program Transformations - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Reports Year : 1997

A language and an Integrated Environment for Program Transformations

Valérie Pascual
Christophe Roudet
  • Function : Author


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).
Fichier principal
Vignette du fichier
RR-3313.pdf (459.68 Ko) Télécharger le fichier

Dates and versions

inria-00073376 , version 1 (24-05-2006)


  • 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⟩
87 View
119 Download


Gmail Mastodon Facebook X LinkedIn More