FORTRAN also convincingly broke through the one-to-one arithmetic of assembly programming. A line written in FORTRAN would translate into several machine instructions, again, simplifying the programming craft. By way of example, below is a rudimentary FORTRAN program for converting temperatures in Fahrenheit to Celsius:
WRITE (*,*) Please enter Fahrenheit temperature:
READ (*,*) FAREN
CELSIUS = (FAREN 32) / 1.8
WRITE (*,*) The Celsius equivalent is: , CELSIUS
STOP
END
In an assembly language, the same simple program runs to more than 60 lines of code. The single FORTRAN line with the conversion formula (CELSIUS = (FAREN - 32) / 1.8) becomes five lines of assembly language instructions below, in an assembler for a personal computer:
fld 32real [0001BEC8]
fchs
fadd 32real [0001E000]
fdiv 32real [0001BEC0]
fstp 32real [ebp-08]
Then, in the binary code understandable to the machine, the single FORTRAN line becomes five lines that look like this:
110110010000010111001000101111100000000100000000
110010011110000
110110000000010100000000111000000000000100000000
110110000011010111000000101111000000000100000000
110110010101110111111000
The lower-level labor for the team was the long slog required to make the FORTRAN-compiled programs match the efficiency of human programmers the goal so many in the industry thought was out of reach. It was difficult, often frustrating work. Years later, when asked about the broad lesson of the FORTRAN experience, Backus articulated a theory of innovation by iteration, a constant process of trial and error. You need the willingness to fail all the time, he explained. You have to generate many ideas and then you have to work very hard only to discover that they dont work. And you keep doing that over and over until you find one that does work. Their willingness to persevere in spite of setbacks and doubts owed a lot to the chemistry of the FORTRAN team. They were a young, bright, close-knit group brimming with energy and optimism. They saw themselves somewhat as outsiders to the rest of IBM, trying to do something that had never been done before in a brand-new field with few, if any, established rules. IBM was really loose for a while in this new part of the business, Sayre recalled. We were like a Silicon Valley operation.
The FORTRAN team was at first called the Programming Research Group, and it was ensconced on the 19th floor of an annex to the IBM headquarters building in New York on 590 Madison Avenue. Their office was next to the engine room for the buildings elevator machinery, and their conversations were sometimes interrupted by loud mechanical rumblings next door. Indeed, their offices would remain modest and makeshift over the three-year course of the FORTRAN project, even as the team grew and then moved to the fifth floor of an office building on 56th Street. They were always a bit isolated and separate. Robert Bemer worked on the other side of the big room occupied by the FORTRAN group, and he mostly recalled their work regimen. They were buried in it, Bemer said, day and night. Irving Ziller recalled a stretch when Sheldon Best was puzzling over a particularly intractable problem. To talk it over, Ziller made a habit of walking with Best to a nearby subway station after work. Frequently, they would keep talking and walk around the block several times, before Ziller finally descended into the subway and Best strolled off to his apartment nearby.
Still, it was not all work. In the winter, snowball fights might break out in the office, with ammunition scooped off the window ledges. They would take a break once a day for coffee, donuts, and conversation at a diner around the corner. And there were the lunch time games of Kriegspiel (War game, in German). Kriegspiel is a form of blind chess, in which two players sit side by side, each with a board, and a divider blocks the view of each others board. Each player makes moves in turn, and tries to imagine the moves the oppo-nent makes. There is a referee who provides clues, by announcing when a piece is successfully captured or when a player cannot make a move because an opponents piece blocks the way. For a certain kind of mind, Kriegspiel was recess.


