Title :
Towards the Automatic Evolution of Reengineering Tools
Author :
Di Penta, Massimiliano ; Taneja, Kunal
Author_Institution :
Res. Centre on Software Technol., Univ. of Sannio, Benevento, Italy
Abstract :
Building reverse engineering or reengineering tools often requires parsers for many different programming languages. The diffusion of dialects and variants makes many available parsers almost useless. While manual grammar maintenance is feasible, it can be a long, tedious and expensive task. This paper proposes to adopt genetic algorithms to evolve existing grammars inferring changes from examples written using the dialect. Applying grammar inference from scratch may lead to a useless grammar, while the proposed approach simply applies changes to the original grammar when needed, thus producing a meaningful grammar. The paper reports some preliminary results related to the evolution of a C grammar.
Keywords :
C language; genetic algorithms; grammars; reverse engineering; systems re-engineering; C grammar; automatic evolution; genetic algorithm; grammar inference; grammar maintenance; parser; programming language; reverse engineering; software reengineering; Algorithm design and analysis; Code standards; Computer languages; Genetic algorithms; Java; Lakes; Open source software; Reverse engineering; Software engineering; Software tools; Genetic Algorithms; Grammar Inference; Source Code Analysis;
Conference_Titel :
Software Maintenance and Reengineering, 2005. CSMR 2005. Ninth European Conference on
Print_ISBN :
0-7695-2304-8
DOI :
10.1109/CSMR.2005.52