[TUHS] FORTRAN

Steve Johnson scj at yaccman.com
Tue Mar 20 02:58:48 AEST 2018


Here is the FORTRAN story as I remember it.

At Bell Labs, during the 7094 days a lot of code was written with FAP
macros.   I remember a LISP compiler that could go 150 levels
deep.  There was an excellent simulation package for filters that was
all assembler and macros.

When we switched to the GE (later Honeywell), all that work was
lost.   It was very painful, and a majority of people swore "never
again" and switched to FORTRAN.  A symbolic algebra program in
assembler, ALPACK, was slowly recreated in FORTRAN by a team of about
five of us.  That was the first time I worked with Dennis, who was
able to make a dynamic storage allocator and support recursive calling
in FORTRAN, a tour de force.  We were acutely aware that not all
FORTRAN compilers were compatible, and Barbara Ryder wrote a PFORT, a
program that validated that our programs fell into the subset of
FORTRAN that actually worked on the six major manufacturers'
FORTRANs.  PFORT was one of the inspirations for Lint.  Many of the
differences were completely bizarre -- one FORTRAN would abort if you
began a program with more than fifty comment lines...

At the time, the main computing center was actually run by the
Research department, using a kludged-up OS on the GE--one that had
originally been intended to run the much-delayed Multics.    When
they finally set up a separate computing dept., I was asked to move
over for a couple of years to make sure things went well.   I found
that I needed to write some service programs for the GE, and didn't
want to learn assembly language.  By this time, Dennis had B running
on the PDP-11, and I suggested he port it to the GE.   He said the
sentence that changed my life -- "Why don't you do it.  After all,
it's just a program!".   B was well suited to the GE, being a
word-addressed machine.and soon I was adding features such as a way to
make character constants for the GE's 6-bit character set.  And I
added the ability to call FORTRAN programs, with a FORTRAN keyword. 
(Though it would have been useful, FORTRAN calling B was tricky
because of the need to set up the stack...)

So the point is, FORTRAN was dominant at Bell Labs for most of the
time that C was being developed.  There was a group that was pushing
the adoption of PL/1, being used to code Multics, but the compiler was
late and not very good and it never really caught on.  The GE
compiler was one of the three that I abstracted the machine
independent code from for PCC (the other two were PDP-11 and IBM 360).

Stu Feldman decided to do F77 -- I'm not sure what his motivation was,
but there were a number of compelling ones available.  We talked
about what would be needed in the code generator and it wasn't much. 
 F77 pretty much used the C calling sequence and runtime library,
with added functions to do format statements, etc.  And knowing Stu,
it was as close to the standard as he could make it.

Fast forward a few years.   Unix and C were widely used in the Labs,
and while FORTRAN was still important for heavy numerical work, it was
waning in popularity.  I had accepted a job in development, being in
charge of System V languages -- C, Pascal, FORTRAN,Ada, and later the
first commercial C++ compiler..  It was obvious that F77 was losing
business bigtime to DEC VMS because their FORTRAN was better.  In
particular, the VMS programs ran faster.  So I put together a small
team of some of my best people to write a FORTRAN optimizer.

That project was very difficult to save -- every six weeks or so,
people would look at it, decide FORTRAN was passe, and cut it out of
the budget.  I would go to the mat and insist that it was important
and get it put back in.   We almost put entries in our calendars
every six weeks -- time to save FORTAN again.  The AT&T marketing
department treated languages as completely unimportant, and kept
assigning their newest hire to interface with me.  I had the same
meeting every month for a half-year or more, each with a different
newbie with no idea what a computer language was.  

By 1986 it became clear to me that I loved development but that AT&T
was never going to make it in the computer business.  I accepted a
job in California at a startup.  Less than a month after I left, the
FORTRAN optimizer (by now almost ready to ship) was cancelled.   A
couple of months later, it was revived and finally went to market.

I'm told that six months after that it was the best selling language
product...

Steve


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20180319/189d314f/attachment.html>


More information about the TUHS mailing list