Information Technology Reference
In-Depth Information
instructions in such a way as to assure that each instruction passed
by the magnetic read head in just the right order and at just the right
execution time. 30 Only the best programmers could hope to develop
applications that worked at acceptable levels of usability and perfor-
mance. They had to cultivate a series of idiosyncratic and highly indi-
vidual craft techniques designed to overcome the limitations of primitive
hardware. 31
In his memoir describing “Programming in America in the 1950s,”
John Backus offered an especially detailed example of the many ways in
which a programmer project could run into problems:
Some idea of the machine diffi culties facing early programmers can be had by a
brief survey of a few of the bizarre characteristics of the Selective Sequence
Electronic Calculator (SSEC).
This vast machine (circa 1948-1952) had a store of 150 words; instructions,
constants, and tables of data were read from punched tapes the width of a
punched card; the ends of an instruction tape were glued together to form a
paper loop, which was then placed on one of 66 tape-reading stations. The SSEC
could also punch intermediate data into tapes that could subsequently be read
by a tape-reading station.
One early problem strained the SSEC's capacity to the limit. The computation
was divided into three phases; in the fi rst phase a tape of many yards of inter-
mediate results was punched out; during the second phase this tape was glued
into a loop and mounted on a tape-reading station so that in the third phase it
could be read many times.
The problem ran successfully through many cycles of these three phases, but
then a mysterious error began to appear and disappear regularly in the third
phase. For a long time no one could account for it.
Finally, the large pile of intermediate data tape was pulled from the bin below
its reading station and a careful inspection revealed that it had been glued to
form a Mobius strip rather than a simple loop. The result was that on every
second revolution of the tape each number would be read in reverse order. 32
As this anecdote suggests, writing programs under these constraints was
a time-consuming and error-prone process. One the oldest-surviving
computer programmers, a 126-line debugging tool developed for the
Cambridge EDSAC machine (notable as being the fi rst working stored-
program computer in the world) was recently discovered to have con-
tained more than twenty errors. 33 Because the author of the program,
the mathematical physicist Maurice Wilkes, literally wrote the topic on
computer programming in the early 1950s (his 1951 Preparation of
Programs for an Electronic Digital Computer is considered the fi rst
widely available textbook on programming), we can assume that this
Search WWH ::




Custom Search