|
ABSTRACT
By manipulating programs to reorganize the way they compute their results, it is possible to improve program performance in certain desirable directions. Further, using certain laws of exchange, it is possible to transform concise, abstract, high-level programs into efficient, concrete , underlying representations. This paper explores the notion of using source-to-source transformations interactively as a basis for an approach to program improvement and refinement. Examples of program manipulation are presented that convey both the flavor of the approach and its requirements.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
|
| |
3
|
|
| |
4
|
Allen, F.E., and Cocke,J., A Catalogue of Optimizing Transformations, in Design and Optimization of Compilers, (R. Rustin ed.), Prentice-Hall, Englewood Cliffs, N.J., (1972), pp. 1-30.
|
| |
5
|
|
| |
6
|
Allen, J.C., and Luckham, D.C., An Interactive Theorem Proving Program, Machine Intelligence 5, (Meltzer, B., and Michie, D. eds), American Elsevier, New York, (1970), 321-336.
|
| |
7
|
Cheatham, T.E., and Wegbreit, B., A Laboratory for the Study of Automatic Programming, Proc. AFIPS Spring Joint Computer Conference, Vol. 40, AFIPS Press, Montvale, N.J., (1972), 11-21.
|
| |
8
|
London, R.L., Proving Programs Correct: Some Techniques and Examples, BIT 10(1970), 168-182.
|
| |
9
|
Waldinger, R.J., and Levitt, K.N., Reasoning about Programs, Tech. note 86, A.I. Center, Stanford Research Institute, Menlo Park, Cal., (October 1973).
|
 |
10
|
|
| |
11
|
Green, C., Application of Theorem Proving to Problem Solving, Proc. IJCAI 1, Washington, D.C., (1969), 219-239.
|
 |
12
|
|
| |
13
|
|
 |
14
|
|
| |
15
|
Hewitt, C., and Smith, B., Towards a Programming Apprentice, Working Paper 90, A.I. Lab., MIT, Cambridge, Mass. (Jan. 1975).
|
 |
16
|
|
| |
17
|
Ingalls, D., The Execution Time Profile as a Programming Tool, in Design and Optimization of Compilers, (Rustin, R. ed.), Prentice-Hall, Englewood Cliffs, N.J., (1972), pp. 107-128.
|
| |
18
|
Knuth, D.E., An Empirical Study of FORTRAN Programs, Software—Practice and Experience 1 (1971), 105-133.
|
 |
19
|
|
| |
20
|
Beckman, L., Haraldson, A., Oskarsson, O., and Sandewall, E., A Partial Evaluator, and Its Use as a Programming Tool, DLU 74/34, DatalogiLaboratoriet, Inst. f. Informationsbehandling, Uppsala University, Uppsala, Sweden,(Nov. 1974).
|
 |
21
|
|
| |
22
|
Standish, T., Harriman, D., Kibler, D., and Neighbors, J., The Irvine Program Transformation Catalogue, Computer Science Department, U.C. Irvine, Irvine, Cal., (Jan. 1976).
|
| |
23
|
Reynolds, J.C., Transformational Systems and the Algebraic Structure of Atomic Formulas, Machine Intelligence 5, (1970), 135-151.
|
| |
24
|
Plotkin, G.D., A Note on Inductive Generalization, Machine Intelligence 5, (1970),153-163.
|
| |
25
|
Standish, T., Kibler, D., Neighbors, J., and Winkler, T., Verifying Source-to-Source Transformations, (in preparation).
|
| |
26
|
Standish, T.A., Arcturus: An Interactive Program Manipulation System, (in preparation).
|
CITED BY 13
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
F. L. Bauer , M. Broy , R. Gnatz , W. Hesse , B. Krieg-Brückner , H. Partsch , P. Pepper , H. Wössner, Towards a wide spectrum language to support program specification and program development, ACM SIGPLAN Notices, v.13 n.12, p.15-24, December 1978
|
|
|
|
|
|
|
|
|
|
|