|
Software - the set of instructions that directs a computer to
do a specific task (2, 80)
Software Timeline - 1940-50's
1944
summer - Harvard Mark I unveiled
- US Navy orders (Lt.)
Grace Hopper
to assist (Commander) Aiken with programming. (2, p81)
( Ranks from (3, p203))
- Hopper's first assignment - computer coefficients for arc
tangent series
- one of the first programmers in the US (programs on paper tape)
- reusing tapes leads to the idea of a library
- Mark III
- additional device translates math notation into Mark III
codes (on mag tape) (2, p83)
- Zuse envisioned a Plan Preparation Machine to punch tapes for his Z4.
(2, p84)
- also check syntax
- PPM never completed
- Rutishauser in Zurich on a Z4 realizes a computer can be its own PPM
- EDSAC (J. D. Wheeler)
- store sequences on tape
- read the tape
- store sequence in memory
- execute the sequence as needed
- "Wheeler jump" because predecessor of the subroutine call
- build a library of sequences
1952
- To "compile" (2, p85)
- instruction sequences are on cards in a library
- select appropriate sequences
- punch transitional instructions on cards
- "compile" all of this into a single card deck for execution
- "Compilers" began to automate this process
- Hopper's definitions (2, p85)
- A "compiler" is a "program-making routine, which produces
a specific program for a particular problem."
- "Automatic Programming" is the whole process of using compilers.
- Hopper begins building A-0, A-1, .... series of compilers for UNIVAC.
- Yes, she's now working for Eckert and Mauchly rather than
Aiken.
|
|
1954
- Laning and Zierler (2, p86)
- Whirlwind
- similar to modern compilers
- generated code from algebraic user input
- not general purpose, but a way of solving algebraic equations
- inefficient object code (7)
- Assemblers more common than compilers (on into the 1960's)
- a few machine instructions for each line of assembler
- including the macro facility
- User Groups (SHARE, others....)
- Sorting a major function of programs, particularly in commercial programs
1956
- Hopper develops B-0, ... series compiler for UNIVAC (2, p92)
- Also called FLOW-MATIC, MATH-MATIC
- Oriented toward business applications
1957
- FORTRAN for IBM 704 introduced (John Backus) (2, p90)
1959
May - US DoD "COBOL" Committee convenes
1960
- US Gov policy: lease or purchase only machines that run COBOL
Dec - "same" COBOL program runs on two different machines, UNIVAC II
and RCA 501 (2, p92)
- COBOL's long identifiers due to Hopper (2, p92)
Software Market Expansion
Growth of Microsoft and others (1, 259-263)
|
|
Notes
1. Martin Campbell-Kelly and William Aspray. Computer: A History of the Information Machine (Basic Books, 1996).
2. Paul E. Ceruzzi. A History of Modern Computing (MIT Press, 2000).
3. Brian Randell, ed., The Origins of Digital Computers: Selected Papers (Berlin: Springer-Verlag, 1982).
4. Saul Rosen. "Electronic Computers: A Historical Survey." In
Computing
Surveys, Vol 1, No 1, March 1969. Association for Computing Machinery.
5. Saul Rosen (Ed.). Programming Systems and Languages.
McGraw Hill Series in Computer Science, 1967.
6. Robert F. Rosin. "Supervisory and Monitor Systems." In Computing
Surveys, Vol 1, No 1, March 1969. Association for Computing Machinery.
7. Donald Knuth. "The Early Development of Programming Languages."
In Metropolis, Howlett, and Rota, eds., History of Computing in the
Twentieth Century, 239.
8. Jan Bakker, ed., "History of Software," http://www.thocp.net/software/software.htm (History of Computing Foundation, accessed 2004 Oct 27).
|