My Computer History


My Computer History

(My apologies to the hard core: I’ve chosen accessibility over strict accuracy in an attempt to address an audience beyond the computer intelligentsia.)

When I was at Westdale Junior High School in Baton Rouge in 1960, I came across The Boys Book of Electronics, which had a chapter on “Giant Electronic Brains”. I’ve been hooked on computers ever since.

I saw an IBM 650, at LSU when I was in high school, but my first chance to interact with a real computer was programming the IBM 7094 Model 2 during the mid-60s while I was an undergraduate at MIT in Cambridge MA, and a co-op student at IBM in Poughkeepsie NY.

The IBM 7090 and 7094 were transistorized offspring of the older IBM 709, which used vacuum tubes. Main memory was 32K words of 36 bits each. Each word could hold two memory addresses, since only 17 bits are required to address 32K words. That left, after the two addresses, 2 more bits, which could be used as “tag bits”. One important feature of this design was that it made the IBM 7094 into a ideal “Lisp Machine”.

Even today, the Lisp programming language is considered by many, including myself, to be the highest of the high level languages, even though the language has been in use since it’s invention by John McCarthy in the late 1950s. The fundamental data structure of Lisp is the “cons cell”, a data item which contains the addresses of two other data items — a near perfect match for the IBM 704/709/7090/7094 computer word.


An IBM 7094 Machine Room

In Poughkeepsie, I learned to program the IBM 7094 close to the bare metal using Assembler Language, a direct 1-for-1 translation from symbolic to binary operation codes, as set out in the IBM 7094 Principals of Operation. That manual, less than 200 pages long, is a complete description of the computer and how to program it. The level of detail in this short document is remarkable. Thanks to the people, that manual (along with other bits of computer history) is still available at the preceding link location. It’s worth a look as a contrast to the complex writing that is the norm for today’s computer documentation.

The 7094 was eclipsed by the IBM 360, which was more modern in a number of ways, including its OS/360, a real operating system of the sort we now assume is a necessary part of a practical computing environment.

Wikipedia has a good article on the IBM 7090/7094.

An open source emulator of the IBM 7094 that runs on windows is available.

There’s a lot more about the IBM 704/709/7090/7094 on the web: just do a search for, e.g., “IBM 7094”.