My comments on FORTRAN versus Algol
Peter Crouch
The passion displayed by David Hill in his description of Algol
60 prompted me to find out more about this wonder language.
I found a copy of the Revised
Report on the Algorithmic Language Algol 60 on the Internet and on reading it the
use of begin and end and procedures brought back memories of
Pascal, which was the first compiled language I used back in the late 1970s and early
80s, before a Fortran compiler was available on the Apple II 8 bit microcomputer. From
other reading I see that Nicholas Wirth was strongly influenced by Algol in his design
of Pascal. I later used both Fortran and Pascal on HP Series 2000 microcomputers in
the mid-80s.
My final contact with Pascal was in the form of Borland's Delphi compiler which I used
in 2000 to compile Pascal source code for a parametric to B-spline conversion program
which I had obtained from the U.S. National Institute of Science and Technology
(formerly the National Bureau of Standards) back in 1989.
I know very little about the facilities of the pre-FORTRAN 66 language and my
knowledge of FORTRAN 66 is limited to maintaining old Fortran code but I can see that
the structured programming features of Algol, the blocks delimited by begin and
end and the availability of the block if ... then ... else construct
would make it attractive compared to the arithmetic IF, logical IF and computed GOTO
statements of FORTRAN 66. The "free format" layout of Algol code would also be more
appealing than the fixed format required by FORTRAN. Despite David's criticism of
gotos and labels I see that they featured quite strongly in the example
code in the Report. However, I am still surprised that the authors of the Report did
not consider it essential to define a standard way of handling input and output.
I may not have understood the description of the switch construct correctly but
some aspects of it look similar to the assigned GOTO statement in FORTRAN 66, where a
previously ASSIGNed integer variable will cause a branch to one of a number of
statement labels.
It was not until I looked closely at the list of authors of the Report that I realised
that John Backus was involved with Algol so soon after working on the development of
Fortran and also that the Algol Report featured the first use of the Backus-Naur Form
to describe the syntax of the language. Peter Naur, the editor of the Report, was the
2005
recipient of the ACM's Turing Award. After the Report he went on to co-author the
GIER Algol Compiler for the Danish GIER computer which Josef Illes mentioned using in
his comments.
I can now see why Algol 60 was so appealing in the early 1960s compared to FORTRAN II,
IV and later 66. I hope David will now feel that after over 30 years Fortran has
finally caught up.
February 2007
Comments on this or any other of the Group's pages should be sent by e-mail to the
FSG Web Editor.
Last modified: Fri 2 Mar 2007 01:22:12
|