Theories of Programming: The Life and Works of Tony Hoare
Jones, Cliff B., Misra, Jayadev
- 出版商: Macmillan
- 出版日期: 2021-09-26
- 售價: $1,400
- 貴賓價: 9.5 折 $1,330
- 語言: 英文
- 頁數: 450
- 裝訂: Quality Paper - also called trade paper
- ISBN: 1450387292
- ISBN-13: 9781450387293
Sir Tony Hoare has had an enormous influence on computer science, from the Quicksort algorithm to the science of software development, concurrency and program verification. His contributions have been widely recognised: He was awarded the ACM's Turing Award in 1980, the Kyoto Prize from the Inamori Foundation in 2000, and was knighted for "services to education and computer science" by Queen Elizabeth II of England in 2000.
This book presents the essence of his various works--the quest for effective abstractions--both in his own words as well as chapters written by leading experts in the field, including many of his research collaborators. In addition, this volume contains biographical material, his Turing award lecture, the transcript of an interview and some of his seminal papers.
Hoare's foundational paper "An Axiomatic Basis for Computer Programming", presented his approach, commonly known as Hoare Logic, for proving the correctness of programs by using logical assertions. Hoare Logic and subsequent developments have formed the basis of a wide variety of software verification efforts. Hoare was instrumental in proposing the Verified Software Initiative, a cooperative international project directed at the scientific challenges of large-scale software verification, encompassing theories, tools and experiments.
Tony Hoare's contributions to the theory and practice of concurrent software systems are equally impressive. The process algebra called Communicating Sequential Processes (CSP) has been one of the fundamental paradigms, both as a mathematical theory to reason about concurrent computation as well as the basis for the programming language occam. CSP served as a framework for exploring several ideas in denotational semantics such as powerdomains, as well as notions of abstraction and refinement. It is the basis for a series of industrial-strength tools which have been employed in a wide range of applications.
This book also presents Hoare's work in the last few decades. These works include a rigorous approach to specifications in software engineering practice, including procedural and data abstractions, data refinement, and a modular theory of designs. More recently, he has worked with collaborators to develop Unifying Theories of Programming (UTP). Their goal is to identify the common algebraic theories that lie at the core of sequential, concurrent, reactive and cyber-physical computations.
Cliff Jones is Emeritus Professor of Computing (and now employed as Senior Research Investigator) at Newcastle University (UK). His doctorate from Oxford under Tony Hoare's supervision marked a transition from 15 years at IBM to a chair at Manchester University. As well as his main research in concurrency, he has a strong interest in the history of computing.
Jayadev Misra is the Schlumberger Centennial Chair Emeritus and University Distinguished Teaching Professor Emeritus at the University of Texas at Austin. His research interests are in formal methods related to concurrency, which has brought him in contact with Sir Tony Hoare for over four decades. He joined Tony in the Verified Software Initiative (VSI) project since its inception, and continues to participate in it fully.