Synopses & Reviews
The computer is frequently characterized as a revolutionary device whose widespread adoption has lead to significant changes in many areas of society. In most cases, however, these changes are attributable not solely to computing hardware but also to the software that runs on it, software which defines both the information that is being dealt with and the ways in which it can be processed. These processes are described in programming languages, and the characteristics of programming languages affect the production of software in many ways.
Rather than concentrating on the description of individual languages and the production of taxonomies of languages, A Science of Operations presents a more general account of the development of theoretical ideas about programming and the way in which these ideas became embodied in particular languages. The book draws on this account to offer an explanation of certain well-known features of the history of programming, such as the success of the structured programming movement in the 1960s and 1970s, and the subsequent popularity of the object-oriented approach.
The text places particular emphasis on the relationship between programming languages and mathematical logic, arguing that logic played a significant role in providing a theoretical framework within which programming language development could take place. This is explored further in the historical context of the widespread introduction of mechanization dating from the early days of the industrial revolution in the eighteenth century.
The book integrates this concern with long-range historical context with detailed discussion of certain significant technical developments. This dual perspective permits technical innovation to be depicted as a contingent and experimental process, and not simply one in which theoretical results are applied in practice. It also offers the possibility of providing substantive explanations of the fine detail of these innovations.
A Science of Operations will be of interest not only to professional historians but also to computing professionals who wish to gain a broader perspective on the development of programming. It is informed by current approaches to the historiography of computing, but is written in an accessible manner and does not assume familiarity with the existing literature. It could serve as a textbook for a course on the development of programming languages, and also provides an unusual perspective on the early development of the computer.
Review
From the reviews: "Priestley is a computer scientist who has previously published books on object-oriented design and programming. This work, which grew out of the author's PhD thesis, is a history of computer programming and the connections between formal logic and programming. ... much of the historical narrative should be accessible to all readers ... . Summing Up: Recommended. History of computing collections serving graduate students through professionals and general audiences." (B. Borchers, Choice, Vol. 48 (11), August, 2011)
Synopsis
Introduction
Babbage's Engines
Semi-automatic Computing
Logic, Computability and Formal Systems
Automating Control
Logic and the Invention of the Computer
Machine Code Programming and Logic
The Invention of Programming Languages
The Algol Research Programme
The Logic of Correctness in Software Engineering
The Unification of Data and Algorithms
Conclusions
Synopsis
Today, computers fulfil a dazzling array of roles, a flexibility resulting from the great range of programs
that can be run on them.
A Science of Operations examines the history of what we now call programming, defined not simply as computer programming, but more broadly as the definition of the steps involved in computations and other information-processing activities.
Synopsis
Today, computers fulfil a dazzling array of roles, a flexibility resulting from the great range of programs
that can be run on them.
A Science of Operations examines the history of what we now call programming, defined not simply as computer programming, but more broadly as the definition of the steps involved in computations and other information-processing activities.
Synopsis
Today, computers fulfil a dazzling array of roles, a flexibility resulting from the great range of programs that can be run on them. A Science of Operations examines the history of what we now call programming, defined not simply as computer programming, but more broadly as the definition of the steps involved in computations and other information-processing activities.
Synopsis
Today, computers fulfil a dazzling array of roles, a flexibility resulting from the great range of programs that can be run on them. A Science of Operations examines the history of what we now call programming, defined not simply as computer programming, but more broadly as the definition of the steps involved in computations and other information-processing activities.
Synopsis
Today, computers fulfil a dazzling array of roles, a flexibility resulting from the great range of programs that can be run on them. A Science of Operations examines the history of what we now call programming, defined not simply as computer programming, but more broadly as the definition of the steps involved in computations and other information-processing activities.
Synopsis
Today, computers fulfil a dazzling array of roles, a flexibility resulting from the great range of programs that can be run on them. A Science of Operations examines the history of what we now call programming, defined not simply as computer programming, but more broadly as the definition of the steps involved in computations and other information-processing activities.
Table of Contents
Introduction Babbage's Engines Semi-automatic Computing Logic, Computability and Formal Systems Automating Control Logic and the Invention of the Computer Machine Code Programming and Logic The Invention of Programming Languages The Algol Research Programme The Logic of Correctness in Software Engineering The Unification of Data and Algorithms Conclusions