Abstract
SETL is a set-theoretically oriented language of very high level whose repertoire of semantic objects includes finite sets, ordered n-tuples, and sets of ordered n-tuples usable as mappings. This paper describes the structure of an optimizer for this language. Among other methods of interest, the optimizer uses techniques which allow relations of inclusion and membership to be established, the domains and ranges of (tabulated) mappings to be estimated from above and below, and the single-valuedness of (tabulated) mappings to be proved. Once facts of this kind have been established, automatic choice of data structures becomes possible. The methods employed are based upon, and extend, known techniques of data flow analysis.
- 1 Allen, F.E. A basis for program optimization. Proc. IFIP Congress 71, North-Holland Pub. Co., Amsterdam, 1971.Google Scholar
- 2 Allen, F.E. Interprocedural data flow analysis. Proc. IFIP Congress 74, North-Holland Publishing Co. Amsterdam, 1974.Google Scholar
- 3 Low, J.R. Automatic coding: choice of data structures. Ph.D. Th., Stanford U., 1974. Google ScholarDigital Library
- 4 Morris, J.B. A Comparison of MADCAP and SETL. Los Alamos Scientific Lab., U. of California, Los Alamos, N. M., 1973.Google Scholar
- 5 Schaefer, M. A Mathematical Theory of Global Program Optimization. Prentice-Hall Publishing Co., Englewood Cliffs, N.J., 1973. Google ScholarDigital Library
- 6 Schwartz, J.T. On Programming: An htterim Report on the SETL Project: Installment 1. Generalities; hlstallment 2. The SETL Language and Examples of its Use. New York U., 1973.Google Scholar
- 7 Schwartz, J.T. Deducing relationships of inclusion and membership in SETL programs. SETL Newsletter No. 130, New York U., 1974.Google Scholar
- 8 Schwartz, J.T. More on copy optimization of SETL programs. SETL Newsletter No. 131, New York U., June 1974.Google Scholar
- 9 Schwartz, J.T. Deducing the logical structure of objects appearing in SETL programs. SETL Newsletter No. 71, New York U., Apr. 1972.Google Scholar
- 10 Schwartz, J.T. Inter-procedural optimization. SETL Newsletter No. 134, New York U., July 1974.Google Scholar
- 11 Schwartz, J.T. Optimization of very high level languages. J. Prog. Languages (1975), 161-194 (Part I), 197-218 (Part ll).Google Scholar
- 12 Sintzoff, M. Calculating properties of programs by valuations on specific models. ACM SIGPLAN Notices (Newsletter), 7, 1 (1972). Google ScholarDigital Library
- 13 Tenenbaum, A. Revised and extended algorithms for deducing the types of objects appearing in SETL programs. SETL Newsletter No. 118, New York U., Oct. 1973.Google Scholar
- 14 Tenenbaum, A. Automatic type analysis in a very high level language. Th., New York U., Oct. 1974.Google Scholar
Index Terms
Automatic data structure choice in a language of very high level
Recommendations
Automatic data structure choice in a language of very high level
POPL '75: Proceedings of the 2nd ACM SIGACT-SIGPLAN symposium on Principles of programming languagesSETL is a set-theoretically oriented language of very high level whose repertoire of semantic objects includes finite sets, ordered n-tuples, and sets of ordered n-tuples useable as mappings. This paper sets forth techniques for the logical analysis and ...
Optimization of very high level languages-II. Deducing relationships of inclusion and membership
SETL is a set-theoretically oriented language of very high level whose reportoire of semantic objects includes finite sets, ordered n-tuples, and sets of ordered n-tuples useable as mappings. This two-part paper studies the optimization problems ...
Optimization of very high level languages-I
SETL is a set-theoretically oriented language of very high level whose repertoire of semantic objects includes finite sets, ordered n-tuples, and sets of ordered n-tuples useable as mappings. This two-part paper studies the optimization problems ...
Comments