{"title":"Review on Theories of Programming: The Life and Works of Tony Hoare","authors":"Jonathan P. Bowen","doi":"10.1145/3560267","DOIUrl":null,"url":null,"abstract":"Sir Tony Hoare FRS is one of the leading computer scientists in the world. This book celebrates Hoare’s life and work as the 1980 winner of the ACM A. M. Turing Award [3], widely considered to be the nearest equivalent to the Nobel Prize in computer science. The Association for Computing Machinery (ACM) has decided to produce a series of books on Turing Award winners and this book forms part of that series. Tony Hoare’s contributions to computer science have been celebrated in previous books. The 1994 book A Classical Mind [4], referring to Hoare’s educational background in classics (“Literae Humaniores” at Oxford University), was produced as a collection of contributions by colleagues in celebration of Hoare’s 60th birthday. This was part of the Prentice Hall International Series in Computer Science, a series founded by Hoare and then edited by him for many years. In 1999, a Symposium was held in Oxford to celebrate Tony Hoare’s official “retirement” from the Oxford University Computing Laboratory and the Programming Research Group (PRG) there, although he continued to work for many further years at Microsoft Research in Cambridge. Several other Turing Award winners contributed to the Symposium and its associated proceedings Millennial Perspectives in Computer Science [2]. In 2006, the Computer History Museum, based in California, USA, celebrated Tony Hoare’s life with an oral history interview held in Cambridge [1], later summarized in the Communications of the ACM [5]. The book under review continues the celebration of Tony Hoare’s life and work. As in the previous books mentioned above, the volume mainly consists of contributions by Hoare’s colleagues, but also includes selected contributions by Hoare himself. The appendices provide additional relevant material. The volume is divided into seven parts. Part I provided introductory material including Hoare’s 1980 Turing Award lecture, originally published in the Communications of the ACM, together with an overview of Hoare’s ideas by the book’s editors. Part II covers program verification, a major aspect of Hoare’s contribution to computer science. Part III includes two chapters in Communicating Sequential Processes (CSP), a seminal approach to modelling concurrency formally using a process algebra. Part IV covers Hoare’s approach to teaching and his links with industry. Although Hoare has been a major contributor to theory underlying computer science, he has always recognized the importance of linking this with practical application. Part V presents","PeriodicalId":50432,"journal":{"name":"Formal Aspects of Computing","volume":"34 1","pages":"1 - 3"},"PeriodicalIF":1.4000,"publicationDate":"2022-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Formal Aspects of Computing","FirstCategoryId":"94","ListUrlMain":"https://doi.org/10.1145/3560267","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0
Abstract
Sir Tony Hoare FRS is one of the leading computer scientists in the world. This book celebrates Hoare’s life and work as the 1980 winner of the ACM A. M. Turing Award [3], widely considered to be the nearest equivalent to the Nobel Prize in computer science. The Association for Computing Machinery (ACM) has decided to produce a series of books on Turing Award winners and this book forms part of that series. Tony Hoare’s contributions to computer science have been celebrated in previous books. The 1994 book A Classical Mind [4], referring to Hoare’s educational background in classics (“Literae Humaniores” at Oxford University), was produced as a collection of contributions by colleagues in celebration of Hoare’s 60th birthday. This was part of the Prentice Hall International Series in Computer Science, a series founded by Hoare and then edited by him for many years. In 1999, a Symposium was held in Oxford to celebrate Tony Hoare’s official “retirement” from the Oxford University Computing Laboratory and the Programming Research Group (PRG) there, although he continued to work for many further years at Microsoft Research in Cambridge. Several other Turing Award winners contributed to the Symposium and its associated proceedings Millennial Perspectives in Computer Science [2]. In 2006, the Computer History Museum, based in California, USA, celebrated Tony Hoare’s life with an oral history interview held in Cambridge [1], later summarized in the Communications of the ACM [5]. The book under review continues the celebration of Tony Hoare’s life and work. As in the previous books mentioned above, the volume mainly consists of contributions by Hoare’s colleagues, but also includes selected contributions by Hoare himself. The appendices provide additional relevant material. The volume is divided into seven parts. Part I provided introductory material including Hoare’s 1980 Turing Award lecture, originally published in the Communications of the ACM, together with an overview of Hoare’s ideas by the book’s editors. Part II covers program verification, a major aspect of Hoare’s contribution to computer science. Part III includes two chapters in Communicating Sequential Processes (CSP), a seminal approach to modelling concurrency formally using a process algebra. Part IV covers Hoare’s approach to teaching and his links with industry. Although Hoare has been a major contributor to theory underlying computer science, he has always recognized the importance of linking this with practical application. Part V presents
期刊介绍:
This journal aims to publish contributions at the junction of theory and practice. The objective is to disseminate applicable research. Thus new theoretical contributions are welcome where they are motivated by potential application; applications of existing formalisms are of interest if they show something novel about the approach or application.
In particular, the scope of Formal Aspects of Computing includes:
well-founded notations for the description of systems;
verifiable design methods;
elucidation of fundamental computational concepts;
approaches to fault-tolerant design;
theorem-proving support;
state-exploration tools;
formal underpinning of widely used notations and methods;
formal approaches to requirements analysis.