Overview It was the first book to describe a number of important concepts in programming, including: • the first account of a
library of reusable code • the first
API • the first explanation of using a
memory dump for
debugging a program, which the book called a "post-mortem routine" Much of the book is dedicated to explaining the library. This consisted of eighty-eight subroutines
implementing mathematical operations like the calculation of
trigonometric functions and arithmetic operations on
complex numbers. The library was a physical collection stored in a
filing cabinet containing
punched paper tape encoding the subroutines. This included a "
library catalog" describing how a programmer could use each subroutine; today this is called
API documentation. working next to a filing cabinet containing the
subroutine library for the EDSAC computer.
Part one Chapter 6 - Debugging This chapter extensively investigates "proofreading" and location of the mistakes in the programs. It also advises against frequent refactoring as it introduces more mistakes as programmer tries to improve the program.
Chapter 7 - Examples of programs for EDSAC Includes examples of calculations of '''' formula and
definite integral, integration of ordinary differential equations, and evaluation of the
Fourier transform by using EDSAC programs.
Chapter 8 - Automatic programming discusses an assembling (compiling) and interpretation of a program, it also discusses motivation behind "floating addresses" which are, in modern terms,
variable references (akin to C++
variable references) which are replaced by compiler by a real memory addresses on the fly every time the subroutine is invoked.
Part two This part contains mostly specification on the EDSAC's
standard library's subroutines. Among included are subroutines for floating-point, complex numbers, debugging, exponential calculations, integration, differential arithmetic equations, logarithms,
quadrature, and trigonometric subroutines. == Publication history ==