Information Technology Reference
In-Depth Information
began working on a system to represent the same instruction in a more
comprehensible format. The same instruction to “add the short number
in memory location 25” could be written out as A 25 S, where A stood
for “add,” 25 was the decimal address of the memory location, and S
indicated that a “short” number was to be used. 3 A Cambridge PhD
student named David Wheeler wrote a small program called Initial
Orders that automatically translated this symbolic notation into the
binary machine code required by the computer.
The focus of early attempts to develop automatic programming utili-
ties was on eliminating the more unpleasant aspects of computer coding.
Although in theory the actual process of programming was relatively
straightforward, in practice it was quite diffi cult and time-consuming. A
single error in any one of a thousand instructions could cause an entire
program to fail. It often took hours or days of laborious effort simply
to get a program to work properly. The lack of tools made fi nding errors
next to impossible. As Maurice Wilkes, another Cambridge researcher,
would later vividly recall, “It had not occurred to me that there was
going to be any diffi culty about getting programs working. And it was
with somewhat of a shock that I realized that for the rest of my life I
was going to spend a good deal of my time fi nding mistakes that I had
made in my programs.” 4
These errors, or bugs as they soon came to be known, were often
introduced in the process of transcribing or reusing code fragments.
Wilkes and others quickly realized that there was a great deal of code
that was common to different programs—a set of instructions to calcu-
late the sine function, for example. In addition to assigning his student
Wheeler to the development of the Initial Orders program, Wilkes set
him to the task of assembling a library of such common subroutines.
This method of reusing previously existing code became one of the most
powerful techniques available for increasing programmer effi ciency. The
publication in 1951 of the fi rst textbook on the Preparation of Programs
for an Electronic Digital Computer by Wilkes, Wheeler, and Cambridge
colleague Stanley Gill helped disseminate these ideas throughout the
nascent programming community. 5
While Wilkes, Wheeler, and Gill were refi ning their notions of a sub-
routine library, programmers in the United States were developing their
own techniques for eliminating some of the tedium associated with
coding. In 1949, John Mauchly of UNIVAC created his Short Order
Code for the BINAC computer. The Short Order Code allowed Mauchly
to directly enter equations into the BINAC using a fairly conventional
Search WWH ::




Custom Search