(j3.2006) Question about DIM

Van Snyder Van.Snyder
Tue Jan 12 19:35:34 EST 2016

On Tue, 2016-01-12 at 17:03 -0600, Dick Hendrickson wrote:
> I'm pretty sure I started in the spring/summer of 1962.  Used a
> Control Data 160 desktop computer (actually, it was the whole desk.)
> It had 4096 words of 12 bit memory and a 6.4 Microsecond cycle time.
> I started in assembly language, but within the year CDC came out with
> a Fortran compiler.  A three pass compiler (it fit on 3 rolls of paper
> tape) and it used paper tape to pass intermediate results from pass to
> pass.  It was small, but people did real physics on it

I didn't use Fortran II (actually a subset of Fortran II) on the IBM
1401 while I was being paid to develop software for that computer in
1966-67.  A few years ago, however, I was helping the Computer History
Museum in Sunnyvale, CA preserve IBM 1401 software.  I found two
operational tapes for the compiler.  The author (Gary Mokotoff) said
he'd lost his listings when he retired, so I reverse engineered it.
Then he found his listings.  My code has far more comments than his.

You could run the compiler from cards or tape.  The deck is about 2200

The compiler was unusual.  It didn't store the program in intermediate
form on tape, disk, cards....  Instead, it gradually massaged it in
core, loading 63 overlays, until it was turned into object code.  Then
you could either just run it, or punch an object deck.  The guy who
proposed the structure said something like "Instead of passing the code
against the compiler, pass the compiler against the code."  The compiler
would run in 8k (8000, not 8192), but if you had 12k or 16k you could
compile bigger programs.  It took more than 17 minutes to compile a
400-card program using the card compiler (15 minutes if the compiler
were on tape).

The machine didn't have floating-point hardware, but the floating-point
arithmetic done in software was impressive.  It was decimal.  You could
specify two to twenty digits (default eight).  It computed with two
guard digits, and rounded (by adding 1/2 ULP, correctly signed).  Not
the best rounding, but better than truncating.  Arithmetic  and
subscripting was interpreted, anticipating UCSD Pascal P-Code by about a

Leonard Haines wrote a paper about it in IBM Systems Journal 4, 1 (1965)
pp 73-80, entitled "Serial compilation and the 1401 FORTRAN compiler."

or http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=5388478 or ....

There's much more detail in

If anybody wants the code....

> Dick Hendrickson
> On Tue, Jan 12, 2016 at 3:42 PM, Van Snyder <Van.Snyder at jpl.nasa.gov>
> wrote:
>         On Tue, 2016-01-12 at 14:35 +0000, Bill Long wrote:
>         >
>         > > I wrote my first Fortran program for a DEC PDP-8s in the
>         summer of
>         > 1967.  I
>         >
>         > Mine was an IBM 1130 in the summer of 1968. (NSF Summer
>         Science
>         > program for high school students. I wonder of they still
>         have that.)
>         Mine was in the fall of 1963 on the IBM 1620.  While JPL was
>         expanding
>         for the Ranger and Surveyor projects, there was a time when
>         several
>         temporary house-trailer offices were outside the fence.  My
>         brother was
>         working in one of them, developing schedules for projects to
>         use the
>         Deep Space Net.  One of his colleagues would sign up for time
>         at 11:00
>         PM, and then call me and say "I'm not going to use it."  I'd
>         park my
>         motorcycle under the trailer and use the 1620 for an hour or
>         so.  That
>         lasted for about six weeks.  Then I started stealing 1620 time
>         at Cal
>         State LA.  Admittedly, that was FORTRAN II.  I didn't start
>         using
>         FORTRAN IV until late 1964 or early 1965, on the 7094 at
>         Caltech.
>         _______________________________________________
>         J3 mailing list
>         J3 at mailman.j3-fortran.org
>         http://mailman.j3-fortran.org/mailman/listinfo/j3

More information about the J3 mailing list