Architectural diversity - was Re: Pair of Twiggys

Chuck Guzis cclist at
Sun Mar 19 13:36:31 CDT 2017

On 03/19/2017 08:04 AM, Bill Gunshannon via cctalk wrote:

> FORTRAN.  FORTRAN D (DOS/360), F and G (OS/360), which were FORTRAN
> IV compilers (retronamed "Fortran 66").  VAX/VMS Fortran 77, except
> most VAXen of the day you seem to be talking about ran BSD Unix and
> Fortran was handled by f2c.
> I learned FORTRAN IV on an IBM 1401, a decimal computer, before
> moving on to PL/1 and COBOL (and FORTRAN) on the System/360.

There was another FORTRAN 66 available fro the S/360, but you usually
saw  it on the lower models (25, 30, 40).   It was called "Basic FORTRAN
IV" or sometimes "USA Basic FORTRAN".  There doesn't seem to be a manual
in S/360 section  for this on bitsavers.  I recall that it was a slim
little packet.

It was brutal--basic INTEGER, REAL and DOUBLE PRECISION data
declarations; blank COMMON only; arithmetic IF only, computed and
unconditional GO TO--and the bugbear of many programmers:  strict
enforcement  of "mixed mode" prohibitions.  File I/O was reasonable, I
suppose.  A maximum of 6 characters in a variable name, stuff like that.

Better than some of the stripped-down FORTRAN II versions, which often
didn't even include type declarations.

FORTRAN IV was a step forward--vendor "extensions" of FORTRAN II were
getting out of hand--contrast some of the conventions of, say, 7090 FMS
II/IBSYS fORTRAN with other vendors.  For example, punching a 'B" in
column 1 indicated a "logical/Boolean" expression and so on...

Still, vendors kept extending their FORTRAN IVs.  I think I remarked on
a CDC syntactic extension that resulted in the ability to write an
ambiguous statement, with no clear way to resolve the meaning.

I believe that Univac, at one point, boasted an 1100 "FORTRAN V". That's
chutzpah for you. "FORTRAN VI", of course, was PL/I.

F77 tightened that up and brought out the notion of having to flag any
non-ANSI syntax.  F90 was clear in that vendor extensions were to be
disabled by default; i.e., the user must explicitly enable them.

F90 was, to me, the point of departure.  Many statement types were
deprecated; since the world was no longer coding on cards, free-format
input was standardized.  Extensions for high-end supercomputers were
codified, etc.   Reserved words made their appearance--in previous
versions, the notion of "whitespace" was introduced.   It was perfectly
legitimate to name a variable "FORMAT" or "REAL" and write it as "F OR M
AT", though I suspect that few ever did.

The Fortran of today resembles FORTRAN II in the same way that COBOL
2014 resembles IBM COMTRAN.

But, mutatis mutandis, Fortran/FORTRAN still lives.


More information about the cctalk mailing list