Affiliation:
1. Univ. of California, San Diego
2. Univ. of Washington, Seattle
Abstract
Maintenance tends to degrade the structure of software, ultimately making maintenance more costly. At times, then, it is worthwhile to manipulate the structure of a system to make changes easier. However, manual restructuring is an error-prone and expensive activity. By separating structural manipulations from other maintenance activities, the semantics of a system can be held constant by a tool, assuring that no errors are introduced by restructuring. To allow the maintenance team to focus on the aspects of restructuring and maintenance requiring human judgment, a transformation-based tool can be provided—based on a model that exploits preserving data flow dependence and control flow dependence—to automate the repetitive, error-prone, and computationally demanding aspects of restructuring. A set of automatable transformations is introduced; their impact on structure is described, and their usefulness is demonstrated in examples. A model to aid building meaning-preserving restructuring transformations is described, and its realization in a functioning prototype tool for restructuring Scheme programs is discussed.
Publisher
Association for Computing Machinery (ACM)
Reference51 articles.
1. ~AHO A. V. SETHI a. AND ULLMAN J. D. Comptlers Prznciples Techniques and Tools. ~Addison-Wesley Reading Mass. 1986. ~AHO A. V. SETHI a. AND ULLMAN J. D. Comptlers Prznciples Techniques and Tools. ~Addison-Wesley Reading Mass. 1986.
2. ~ALLEN F. E. AND COCKE J. A catalogue of optimizing transformations. In R. Rustin editor ~Design and Opttmization of Compilers. Prentice-Hall Englewood Cliffs N J 1972. ~ALLEN F. E. AND COCKE J. A catalogue of optimizing transformations. In R. Rustin editor ~Design and Opttmization of Compilers. Prentice-Hall Englewood Cliffs N J 1972.
Cited by
85 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献