In lieu of an abstract, here is a brief excerpt of the content:

Reviewed by:
  • A Science of Operations: Machines, Logic, and the Invention of Programming
  • David Alan Grier (bio)
A Science of Operations: Machines, Logic, and the Invention of Programming. By Mark Priestley. London: Springer, 2011. Pp. 341. $129.

The role of logic in the early development of the computer is perhaps best suggested by the leaders of the original ENIAC project at the University of Pennsylvania. One of the leaders of that team, Arthur Burks, conceived of that machine as a logical device and devoted the rest of his career to studying logic. Unlike the other members, Herman Goldstine, John Mauchly, and J. Presper Eckert, he never built another machine or worked in the computing industry. Instead, he joined the University of Michigan to articulate the now-familiar logical foundations for computing machinery.

In A Science of Operations, Mark Priestley argues that mathematical logic not only provided the foundation for computing machinery but also for programming and software. Though he traces the connection back to the writings of Charles Babbage, he moves past much of late-nineteenth-and early-twentieth-century logic and grounds his story in the work of Alan Turing and Alonzo Church. From this point, he connects the ideas of logic to the concepts of programming, programming languages, the rational formulation of the influential Algol 60 project, and the development of structured programming in the late 1960s.

Priestley's case will be familiar to anyone who has taught discrete mathematics or the theory of algorithms, as his book draws heavily from the historical literature of programming. Though not deeply technical, it retains enough technical details to be a welcome supplemental textbook for a discrete-structures class, as it makes the connection between primitive mathematical ideas and their instantiation in programming concepts. Modern texts rarely make such connections, or do so superficially.

The book hews to the conventional historiography represented by authors such as Herman Goldstine and Paul Ceruzzi. While it engages only a limited amount of the current scholarship on software, it builds a strong internalist framework for its subject. In building this framework, it provides good starting points for the study of a number of key issues in the development of software. Those issues include the interaction between logicians and radio engineers during the early 1950s, the rise of machine-parsable languages after 1954, and the importance of logic to the physical-symbol system hypothesis in the artificial-intelligence research of the late 1950s. The book completes its argument with the blossoming of logic and programming in the early 1970s. It anticipates but does not discuss the rise of structured programming and logic programming, two topics that were shaped by the interaction of logicians and computer engineers.

In his first discussion of the ENIAC, published in 1947, Arthur Burks talked about many details of the machine before finally noting the logical [End Page 741] foundation of the device, the fact that the "control circuits were compounded out of three very simple types of circuits: the electronic representations of the logical concepts of 'and,' 'or,' and 'not.'"Within a few years, other researchers were beginning to appreciate that logic was clearly a part of programming, even though they separated the tasks of logical programming from those of numerical programming. Priestley's book argues that the foundation of mathematical logic was central to both.

David Alan Grier

David Alan Grier is the author of When Computers Were Human (2005) and Too Soon to Tell (2009). He is the incoming president-elect of the IEEE Computer Society and the former editor of Annals of the History of Computing.

...

pdf

Share