A Programming Environment for Fortran

Date
1983-10
Journal Title
Journal ISSN
Volume Title
Publisher
Description
Abstract

Although it has many flaws by comparison with more modern programming languages, Fortran remains the standard language for numerical programming - partly because there is a large body of important software coded in it, partly because good optimizing compilers can be written for it, and partly because it is reasonably easy to transport Fortran programs from one machine to another. The numerical analysis community has developed reliable packages of subroutines to solve various kinds of problems (e.g. LINPACK, EISPACK and MINPACK) and these packages are widely distributed. Yet, in spite of its popularity, most of the sophisticated new tools for program development have not been extended to support it. As a part of the R^n project at Rice University, we are building a retargetable interactive programming environment for Fortran. At the heart of the environment is project management software that maintains a data base on all the program modules. The data base contains not only the source for each module in the system but also related information such as the composition of programs, cross-module procedure call information, interprocedural data flow information, and specifications for calls to existing procedures. The data base is used by all the other tools in the environment: an intelligent editor that knows enough Fortran to assist the user in preparing programs, an interactive source-level debugging system, and an optimizing compiler with extensive interprocedural analysis. Of particular interest, because of our previous work on compiler optimization, is the assistance such a system can give to interprocedural data flow analysis and optimization. Because all the modules of a program are saved in the data base, the information needed to analyze data flow effects and improve code across procedure boundaries is conveniently available to the optimizing compiler. Thus, the environment will permit us to build compilation systems which optimize the program as a whole rather than module by module - something which has not been possible with conventional compilation techniques.

Description
Advisor
Degree
Type
Technical report
Keywords
Citation

Hood, Robert T. and Kennedy, Ken. "A Programming Environment for Fortran." (1983) https://hdl.handle.net/1911/101563.

Has part(s)
Forms part of
Published Version
Rights
Link to license
Citable link to this page