On Wed, 2026-06-17 at 13:48 -0600, ben via cctalk wrote:
Fortran is alive and well. The national and
international
committees
are meeting in Coventry (and Zoom) this week to put the finishing
touches on Fortran 2028.
That is all well and good. until find a dusty card deck with FORTRAN
IV.
Very few FORTRAN IV statements have been deleted from modern Fortran
(the official spelling was changed in 1990). ASSIGN and assigned GO TO,
PAUSE, and the "H: edit descriptor were eliminated. Real and double
precision DO loops (not in FORTRAN IV and mistakenly added in Fortran
90) were deleted. The interpretation of the first character of
"printed" output as vertical format control was deleted in 2008,
without changing any syntax, because there was no way to control it,
and no way to detect whether output to a particular unit did it. A
post-processor is trivial so no effort was done to add control and
inquiry. Arithmetic IF and nonblock DO were deleted in Fortran 2018.
Fixed form has NOT been deleted, even though nearly-trivial
preprocessors exist to convert to free form. Read Annex B of the
standard.
The Intel delegate, who had been a DEC VAX Fortran developer (the late
Stan Whitlock), remarked to the committee "Go ahead and delete it; I
still have to compile it forever."
The NAG compiler has a -dusty switch that interprets some statements
that have the same syntax as in FORTRAN IV with FORTRAN IV semantics if
there are subtle differences.
So you can almost certainly still compile your dusty FORTRAN IV decks
(if you have a card reader). And if you can't compile them, there's a
good chance the necessary changes are simple. Polyhedron Software's
SPAG code might handle all of them automagically — and produce a nice
structured code instead of spaghetti.