Code Transformation by Direct Transformation of ASTs
Author(s) -
M. Rizun,
Jean-Christophe Bach,
Sté́phane Ducasse
Publication year - 2015
Publication title -
hal (le centre pour la communication scientifique directe)
Language(s) - English
Resource type - Conference proceedings
DOI - 10.1145/2811237.2811297
Subject(s) - computer science , programming language , transformation (genetics) , task (project management) , code (set theory) , model transformation , software , software engineering , program transformation , software maintenance , software development , artificial intelligence , engineering , systems engineering , biochemistry , chemistry , consistency (knowledge bases) , set (abstract data type) , gene
International audienceSoftware evolves to be adapted to the environment, due to bugs, new features and design changes. Code transformations can be done manually, but that is a tedious and error-prone task. Therefore automated tools are used to assist developers in this maintenance operation. The Pharo environment includes its own refactoring tool — the Rewrite Engine — that allows one to transform methods by directly specifying parts of the AST to be rewritten. In addition, it proposes a parse tree transformation engine. However this tool and the used DSL to express the patterns for matching and transforming trees are complex to understand and master. In this context, writing a transformation rule is not a trivial task. We present a graphical tool built on the top of the Rewrite Engine — the Rewrite Tool — that abstracts the creation of transformation rules and proposes high-level AST operations that are simpler to understand than syntactic descriptions. It helps to automate the process of code transformation with a user-friendly interface
Accelerating Research
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom
Address
John Eccles HouseRobert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom