A Science of Operations Machines, Logic and the Invention of Programming

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 Operationsexamines the history of what we now call programming, defined not simply as computerprogramming, but more broadly as the definition of the steps...

Full description

Saved in:
Bibliographic Details
Main Author Priestley, Mark
Format eBook
LanguageEnglish
Published London Springer Verlag London Limited 2011
Springer London, Limited
Springer London
Springer
Edition1. Aufl.
SeriesHistory of Computing
Subjects
Online AccessGet full text
ISBN1848825544
9781848825543
ISSN2190-6831
2190-684X
DOI10.1007/978-1-84882-555-0

Cover

Abstract 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 Operationsexamines the history of what we now call programming, defined not simply as computerprogramming, 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 notations, 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, aswell as for the general reader. The historical narrative builds the story in a clear and logical fashion, roughly following chronological order.
AbstractList 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 Operationsexamines the history of what we now call programming, defined not simply as computerprogramming, 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 notations, 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, aswell as for the general reader. The historical narrative builds the story in a clear and logical fashion, roughly following chronological order.
High level academic ebook
Author Priestley, Mark
Author_xml – sequence: 1
  fullname: Priestley, Mark
BookMark eNpVkElPwzAQhQ0URFt6RtwqDkgcTL0vx1KVRarUAwhxsxzHgUCISxy2f4_bABJzsebN997IMwC9OtQegCOMzjBCcqKlghgqphSBnHOItsAoaXijJAFtgz7BGkGh2P0OGPwOGOv9DSjeA33FJRVUUr4PRjE-oVRMCiFQHxxOxzeu9LXz41CMlyvf2LYMdTwAu4Wtoh_9vENwdzG_nV3BxfLyejZdQMtSxCf0VBMlaYa05AXKvaYaSSYd44pIwTLsJMfE5YRlsnC-kMQK7axHVmqX5TkdgtMu2MZn_xEfQ9VG8175LITnaP59N7GTjo2rpqwffGM6CiOzPtiaNthseJMMZu046RyrJry--diaTbDzddvYyszPZ0Jjmk4zBMcd6Epb58GkBS-2-TJdSxTjWtBv-qduSA
ContentType eBook
Copyright Springer-Verlag London Limited 2011
Copyright_xml – notice: Springer-Verlag London Limited 2011
DBID 08O
DEWEY 005.109
DOI 10.1007/978-1-84882-555-0
DatabaseName ciando eBooks
DatabaseTitleList

DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISBN 9781848825550
1848825552
EISSN 2190-684X
Edition 1. Aufl.
1
ExternalDocumentID 9781848825550
187255
EBC691337
ciando284596
GroupedDBID 089
08O
0D6
0DA
20A
38.
92K
A4J
AABBV
ABFCV
ACDPG
AEHWL
AETDV
AEZAY
ALMA_UNASSIGNED_HOLDINGS
AZZ
BBABE
C9S
C9V
CZZ
IEZ
MYL
NUC
SAO
SBO
TCUKC
UZ6
-T.
.~Z
0E8
AAFYB
AAINA
AAMFE
ABMNI
ABTMC
ACBPT
AECAB
AECMQ
AEGQK
AEJLV
AEKFX
I4C
TPJZQ
Z83
AAJYQ
AATVQ
ABBUY
ABCYT
ACDTA
ACDUY
AEHEY
AHNNE
ATJMZ
ID FETCH-LOGICAL-a4476x-e392873b0975f0de9390747c4582764b1c7512cd24b7fcef72a69cae0a79cbdd3
ISBN 1848825544
9781848825543
ISSN 2190-6831
IngestDate Wed May 21 13:01:10 EDT 2025
Tue Jul 29 20:31:49 EDT 2025
Fri May 30 21:26:41 EDT 2025
Tue Jan 05 19:29:36 EST 2021
IsPeerReviewed false
IsScholarly false
Keywords Computer Sonstiges
LCCallNum_Ident QA76.17
Language English
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-a4476x-e392873b0975f0de9390747c4582764b1c7512cd24b7fcef72a69cae0a79cbdd3
OCLC 857363735
PQID EBC691337
PageCount 344
ParticipantIDs askewsholts_vlebooks_9781848825550
springer_books_10_1007_978_1_84882_555_0
proquest_ebookcentral_EBC691337
ciando_primary_ciando284596
PublicationCentury 2000
PublicationDate 2011
2011-03-01
PublicationDateYYYYMMDD 2011-01-01
2011-03-01
PublicationDate_xml – year: 2011
  text: 2011
PublicationDecade 2010
PublicationPlace London
PublicationPlace_xml – name: London
PublicationSeriesTitle History of Computing
PublicationSeriesTitleAlternate History of Computing
PublicationYear 2011
Publisher Springer Verlag London Limited
Springer London, Limited
Springer London
Springer
Publisher_xml – name: Springer Verlag London Limited
– name: Springer London, Limited
– name: Springer London
– name: Springer
SSID ssj0000476660
Score 2.0723844
Snippet 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...
High level academic ebook
SourceID askewsholts
springer
proquest
ciando
SourceType Aggregation Database
Publisher
SubjectTerms Computer programming
Computer Science
History
History of Computing
Logic, Symbolic and mathematical
Microcomputers
Programming languages (Electronic computers)
Subtitle Machines, Logic and the Invention of Programming
TableOfContents Intro -- A Science of Operations -- Preface -- Acknowledgements -- Contents -- Introduction -- Minds, Method and Machines -- Language and Science -- Universal Languages -- Symbolic Language -- The Age of Machinery -- The Mechanization of Mathematical Language -- Playfair's Paradox -- Woodhouse's Formalism -- The Analytical Society -- Babbage's Philosophy of Analysis -- Peacock's Algebra -- The Machine Metaphor -- Babbage's Engines -- The Division of Mental Labour -- The Difference Engine -- The Meanings of the Difference Engine -- The Mechanization of the Mental -- Economy -- Avoidance of Error -- Mathematical Innovation -- The Mechanical Notation -- The Analytical Engine -- The Origins of the Engine -- The Structure of the Analytical Engine -- The Mathematical View -- Translating Analysis -- The Science of Operations -- The Meanings of the Analytical Engine -- Mechanizing the Mind -- Time and Economy -- Avoidance of Error -- Natural Theology -- Conclusions -- Babbage as Pioneer -- Babbage and Programming -- Semi-Automatic Computing -- The Census Problem -- The Hollerith Tabulating System of 1890 -- Representation of Data -- Hollerith's Machines -- Functionality -- Further Developments in Punched Card Machines -- Standardization of Cards -- Adding -- Increasing Programmability -- Multiplication -- Summary -- Comrie and the Mechanization of Scientific Calculation -- Register Machines -- Hollerith Machinery -- Semi-Automatic Programming -- Logic, Computability and Formal Systems -- Gödel's Construction -- Arithmetization -- Formalizing Metamathematics -- Gödel's Strategy -- Recursive Functions -- lambda-definability -- Direct Approaches to Defining Effective Computability -- Post's Formulation -- Turing's Machine Table Notation -- Turing Machines -- Machine Tables -- A Standard Tape Format -- Variables and Functions -- Substitution and Recursion
Free Variables -- Universal Machines -- Turing's Universal Machine -- The Concept of a Formal Language -- Object Language and Metalanguage -- Syntax -- Semantics -- The Structure of the Metatheory -- The Relationship Between Turing's Work and Logic -- Automating Control -- Konrad Zuse's Early Machines -- The Design of Zuse's Machines -- Programming the Z3 -- Mark I: The Automatic Sequence Controlled Calculator -- Aiken's Proposal -- The Design of the ASCC -- Programming the ASCC -- The ENIAC -- The Structure of the ENIAC -- The Operation of the ENIAC -- Programming the ENIAC -- Cycles and the Master Programmer -- Conditional Execution -- The Bell Labs Relay Machines -- The Design of the Bell Labs Machine -- Programming the Bell Labs Machine -- The Significance of the Automatic Calculators -- Functional Scope -- Analogy with Manual Computation -- Physical Representation of Computational Structures -- Tables -- Subsequent Developments -- Logic and the Invention of the Computer -- The Origins of the Stored-Program Computer -- The Early Development of Cybernetics -- Von Neumann's Design for the EDVAC -- Logic and the Stored-Program Concept -- The EDVAC Code and Address Modification -- Memory Structure -- The Operations of CA -- The Orders -- Address Modification and Conditional Execution -- Turing and the ACE -- Giant Brains -- Universal Machines -- General-Purpose Machines -- Conclusions -- Machine Code Programming and Logic -- Sequencing of Operations -- Transfer of Control -- Condition Testing -- Instruction Modification -- Subroutines -- Machine Code and Program Structures -- Machine Code and Logic -- Syntax -- Flow Diagrams and Program Semantics -- Programs as Metalinguistic Expressions -- Conclusions -- The Invention of Programming Languages -- Automatic Coding -- The Semantics of Pseudocodes -- Extending Machine Code -- Translation
The Relationship Between Smalltalk and Logic -- Smalltalk as a Formal Language -- Smalltalk's Computational Model -- Smalltalk and Compositional Semantics -- The Programming Process -- Conclusions -- Conclusions -- Paradigms and Revolutions -- Relating Theory and Practice -- Methodological Conclusions -- Internal and External Accounts -- The Construction of New Concepts -- Further Directions -- Appendix Turing's Universal Machine -- General Purpose m-functions -- f(C, B, alpha): find -- e(C, B, alpha): erase -- e(B, alpha): erase all -- pe(C, beta): print at end -- l(C): move left -- f'(C,B,alpha): find and move left -- c(C,B,alpha): copy -- ce(C,B,alpha): copy and erase -- ce(B,alpha): copy and erase all -- cp(C,U,G,alpha, beta): compare -- cpe(C,U,G,alpha, beta): compare and erase -- cpe(U,G,alpha, beta): compare and erase all -- q(C): find end of tape -- q(C, alpha): find last -- e(C): erase marks -- The Contents of the Tape -- Coding Instructions -- Complete Configurations -- The Structure of U's Tape -- The Main Table -- b: Write Initial Complete Configuration -- anf: Mark Current Configuration -- kom: Find Next Instruction -- kmp: Compare Configurations -- sim: Mark Instruction -- mk: Mark Complete Configuration -- sh: Show Output -- inst: Write New Complete Configuration -- ov: Erase All Marks -- References -- Index
Virtual Machines -- Instruction Modification -- Formula Translation -- The Laning and Zierler Program -- Notational Diversity -- Fortran and Increasing Linguistic Complexity -- Constants, Variables and Subscripts -- Expressions and Arithmetic Formulae -- Statements -- Semantics of Fortran -- Universal Languages -- Attempts at Standardization -- Algol -- UNCOL -- Algol 60 as a Formal Language -- The Alphabet -- Object Language and Metalanguage -- Syntax -- The Identification of Programs -- Semantics -- The Influence of Logic on Algol -- `Quantifiers' in Algol 58 -- Substitution -- Subroutines and Parameter Passing -- Blocks and Variable Binding in Algol 60 -- Lisp and Recursive Function Theory -- Conclusions -- The Algol Research Programme -- Algol 60 as a Concrete Paradigm -- Inventing Institutions -- Scientific Publications -- Paradigm Formation -- Normal Science in the Algol Research Programme -- The Description of Programming Languages -- The Role of Syntax -- The Meaning of Programs -- Pragmatics -- Different Philosophies of Programming Language Design -- Logic and the Design of Control Structures -- Logic and Data Structures -- Modelling Data for Information Retrieval -- Conclusions -- The Logic of Correctness in Software Engineering -- Checking Computations -- Debugging and Testing -- Correctness Proofs -- Constructive Methods -- Specifications and Correctness -- Structured Programming -- Proof and Testing -- Software Engineering as a Euclidean Theory -- The Role of Testing Within Euclidean Methods -- An Inductive View of Testing -- Quasi-Empirical Software Development -- Correctness and the User -- Conclusions -- The Unification of Data and Algorithms -- Simulation Languages -- Simula -- Modelling the Real World -- Simula 67 -- Data Abstraction -- Smalltalk -- Smalltalk-72 -- Later Smalltalk Developments
Title A Science of Operations
URI http://ebooks.ciando.com/book/index.cfm/bok_id/284596
https://ebookcentral.proquest.com/lib/[SITE_ID]/detail.action?docID=691337
http://link.springer.com/10.1007/978-1-84882-555-0
https://www.vlebooks.com/vleweb/product/openreader?id=none&isbn=9781848825550&uid=none
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV3PT9swFH4a5QKX_QKt68asicMk8JQ0blxP4sBQEUNoJ4a4Wf4VCW20aA3Ttr9-z3acNIzDxiVqojrP8ZfYn5-_9wywq6Y2U4IrqmxRUTY2FRU46lKhcSqmjPZZrLza4nN58oWdXk4uu1w6Ibqk1u_N73vjSh6CKl5DXH2U7H8g294UL-BvxBePiDAe75Df9rSRFu-lcBzkeosbF2EM6rbroI6MH3_o11qN5FXSlweVc9RlXaeRC9vc56Wa4peG9D9maQ0P4ZYHMZXIr6RAv61TIdu5P4tVb0HyFvZmkeneMV_SX31qJ6PIafgnxWrQrBtAWllfr55rsMY5TofXD2enZxet3ytjHGdMWYzmj2ZZk3qrrUZafW4SAPfMbsKmWn7FAQAHh3qJvME7f-yiN0G4s6YdqML5E1h3Pn7kKTxy82fwOO2aQZpO9Dl8OiQNeGRRkQ68DyRBt08CcAQtEgSOtMD5AivAbcHF8ez86IQ2G1pQxfCxf1KHbHTKC50JPqky60ThfRPc-MVLXjKdG44EzNgx07wyruJjVQqjXKa4MNraYhsG88XcvQAilGN-KwOrkNJaXmpWTZCRID3LK-y22RDerrST_PEtLL4vZQ-jIYxi88mbmNtExlPkLBNRDuFNalMZSjd6YTn7eFSKvCj4EN6lppbx9ikLNpqRuQyGJFqS2ct_qc8INrqX9hUM6u-37jWSvlrvNO_RH2_ITgY
linkProvider Library Specific Holdings
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.title=A+science+of+operations%3A+machines%2C+logic+and+the+invention+of+programming&rft.au=9781848825550&rft.series=History+of+computing&rft.date=2011-03-01&rft.pub=Springer&rft.isbn=9781848825543&rft_id=info:doi/10.1007%2F978-1-84882-555-0&rft.externalDocID=9781848825550
thumbnail_m http://utb.summon.serialssolutions.com/2.0.0/image/custom?url=https%3A%2F%2Fvle.dmmserver.com%2Fmedia%2F640%2F97818488%2F9781848825550.jpg
thumbnail_s http://utb.summon.serialssolutions.com/2.0.0/image/custom?url=https%3A%2F%2Fmedia.springernature.com%2Fw306%2Fspringer-static%2Fcover-hires%2Fbook%2F978-1-84882-555-0