by A. A. Grau, U. Hill, H. Langmaack ; edited by F. L. Bauer, A. S. Householder, F. W. J. Olver, H. Rutishauser, K. Samelson, E. Stiefel.
.PUBLICATION, DISTRIBUTION, ETC
Place of Publication, Distribution, etc.
Berlin, Heidelberg :
Name of Publisher, Distributor, etc.
Springer Berlin Heidelberg,
Date of Publication, Distribution, etc.
1967.
SERIES
Series Title
Die Grundlehren der mathematischen Wissenschaften, in Einzeldarstellungen mit besonderer Berücksichtigung der Anwendungsgebiete,
Volume Designation
137
ISSN of Series
0072-7830 ;
CONTENTS NOTE
Text of Note
1. Introduction -- 2. Principles of Algol translation -- 2.1. Basic linguistic definitions -- 2.2. The Backus normal form -- 2.3. The analyzing process -- 2.4. The method of the 'Klammergebirge' -- 2.5. Recursive sequential methods and push down lists -- 2.6. Example for the use of two push down lists and of precedence rules -- 2.7. The concept of recursive translation -- 2.8. Organization of the translator -- 3. Languages involved in the translation process -- 3.1. Source language -- 3.2. Target language -- 3.3. Meta-language for describing the translator -- 4. Correspondence between elements of source and target language -- 4.1. Declarations in general -- 4.2. Declaration of variables and arrays and data storage allocation in the main program -- 4.3. Handling of types -- 4.4. Assignment statements -- 4.5. Boolean expressions -- 4.6. Conditional statements and expressions -- 4.7. For statements -- 4.8. Go to statement and switch declaration -- 4.9. Procedures and dynamic storage -- 4.10. Procedure calls and declarations -- 5. Recursive address calculation -- 5.1. Introduction -- 5.2. Assumptions necessary for the use of recursive address calculation -- 5.3. Use of recursive address calculation for one loop -- 5.4. Nested loops -- 5.5. Loops with more than one list element -- 5.6. Further optimization possibilities -- 6. Run time organization -- 6.1. The instruction storage allocation -- 6.2. The instruction procedure call -- 6.3. The instruction formal procedure call -- 6.4. The instruction normal procedure exit -- 6.5. The instruction jump to -- 6.6. The instruction formal procedure exit -- 6.7. The instructions name address and name call -- 6.8. The instruction name procedure exit -- 7. Model translator. Description -- 7.1. Introduction -- 7.2. Pass 1. The preparatory pass -- 7.3. Pass 2. The implementation of recursive address calculation -- 7.4. Pass 3. Decomposition and production of target program -- 7.5. Editorial functions -- 7.6. Run time system. The target language program interpreter -- 8. Algol 60 model translator. Formal part -- Pass 1: preparatory pass -- Pass 2: recursive address calculation pass -- Pass 3: decomposition and generation pass -- Check routine: check procedure calls and substitutions of formal parameters by actuals -- Check routine: check agreeability of actual parameter and specification -- Run time system: target language program interpreter -- START TRANSLATION -- Appendix: Correspondence matrix for actual and formal parameters.
0
SUMMARY OR ABSTRACT
Text of Note
Problem oriented programming languages as they have developed over the last ten years essentially serve two purposes which somewhat crudely can be described by the terms man-man communication and man-machine communication, respectively. As a carrier of information between humans, the problem oriented programming language is designed to express the essence of an algorithm in a way which is un ambiguous and concise as well as independent of (and therefore meaning ful without any reference to) the changing details of computing machine ry. As a carrier of information from man to computer, the language permits the human programmer to express his computational needs in a compact way adapted to the general characteristics of computers, but freed from the burdening details of specific computer facilities. This presupposes the existence of algorithms, or programs, which permit the computer itself to transform efficiently programs written in the problem oriented language into machine programs. Thus the entire computing community profits from the work of the individual programmer. The primary purpose of the Handbook is to present a set of algorithms of broad utility from the domain of numerical mathematics written in the problem oriented language ALGOL 60. Therefore, volumes I a and I b are in a sense supplementary as they serve to introduce this language. Volume I a gives a description of the language proper and of its use for writing correct programs. Thus, volume I a primarily covers the aspect of man-man communication by means of ALGOL 60.