Fortran proposals




Block-structured Exception handling


Uniform Syntax

David Parnas, On the criteria to be used to divide systems into modules, Communications of the ACM 15, 12 (December 1972). This paper pointed out that the cost to modify a program is proportional to the size of the program, rather than the scope of the change, because the representation of objects appears in the syntax to access them.

Douglas T. Ross, Uniform Referents: An Essential Property for a Software Engineering Language, in J. T. Tou (Ed.), Software Engineering, Academic Press (1969).

Charles M. Geschke and James G. Mitchell, On the problem of uniform references to data structures, IEEE Transactions on Software Engineering TSE-1 (June 1975).

Scientific Programming

Scientific Programming in Fortran, Scientific Programming 15 (22 May 2007).
The Fortran programming language was designed by John Backus and his colleagues at IBM to reduce the cost of programming scientific applications. IBM delivered the first compiler for its model 704 in 1957. IBM's competitors soon offered incompatible versions. ANSI (ASA at the time) developed a standard, largely based on IBM's Fortran IV in 1966. Revisions of the standard were produced in 1977, 1990, 1995 and 2003. [Revisions were produced in 2008 and 2018, and a 2023 revision is being balloted as of January 2023.]

Exception Handling

Exception Handling in Fortran, ACM Fortran Forum 34, 1 (April 2015) pp 5-9.
Since 1966, Fortran has had only very rudimentary exception-handling mechanisms: END=, EOR=, ERR=, IOSTAT=, and STAT= specifiers, and alternate returns. Alternate returns are now considered to be obsolescent.

Block-structured exception handling has heen provided in other programs for decades. For example, Ada 83 provided block-structured exception handling.

It's time for Fortran to have a complete block-structured exception handling mechanism.