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. This unique perspective highlights how the history of programming is distinct from the history of the computer, despite the close relationship between the two in the 20th century. The book also discusses how the development of programming languages is related to disparate fields which attempted to give a mechanical account of language on the one hand, and a linguistic account of machines on the other.
Topics and features: Covers the early development of automatic computing, including Babbage’s “mechanical calculating engines” and the applications of punched-card technology, examines the theoretical work of mathematical logicians such as Kleene, Church, Post and Turing, and the machines built by Zuse and Aiken in the 1930s and 1940s, discusses the role that logic played in the development of the stored program computer, describes the “standard model” of machine-code programming popularised by Maurice Wilkes, presents the complete table for the universal Turing machine in the Appendices, investigates the rise of the initiatives aimed at developing higher-level programming nota
tions, and how these came to be thought of as ‘languages’ that could be studied independently of a machine, examines the importance of the Algol 60 language, and the framework it provided for studying the design of programming languages and the process of software development and explores the early development of object-oriented languages, with a focus on the Smalltalk project.
This fascinating text offers a new viewpoint for historians of science and technology, as well as for the general reader. The historical narrative builds the story in a clear and logical fashion, roughly following chronological order.
قائمة المحتويات
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.