Title
Automatic Program Improvement: Variable Usage Transformations
Abstract
The design objective of the Leeds Transformation System is to transform existing programs, written in a variety of languages, into "tidier" programs. The total system was conceived of as having three phases: syntactic transformations, variable usage transformations, and synthesizing features. Because programmers vary greatly in what they consider to be a more acceptable form, we have aimed to make the system as data driven as possible. (That also enables us to deal with a variety of programming languages.) The paper reviews the first two phases, reports the second in some detail, and illustrates the use of the system on an ALGOL 60 program. Redundant assignments, redundant variables, and loop-invariant statements are discovered by means of a novel approach which represents variable usage within a program as a correspondence matrix. Potential enhancements of the system are also discussed.
Year
DOI
Venue
1983
10.1145/69624.357209
ACM Trans. Program. Lang. Syst.
Keywords
Field
DocType
variable usage transformations,flow-of-control graph,correspondence matrix,additional key words and phrases: variable usage,automatic program improvement,programming language
Programming language,ALGOL 60,Data-driven,Matrix (mathematics),Computer science,Theoretical computer science,Syntax,Design objective
Journal
Volume
Issue
ISSN
5
2
0164-0925
Citations 
PageRank 
References 
6
1.71
13
Authors
2
Name
Order
Citations
PageRank
B. Maher172.16
D. H. Sleeman21531.94