British computer scientist
Sir Charles Antony Richard Hoare (/h ɔːr / ; born 11 January 1934), also known asC. A. R. Hoare , is a Britishcomputer scientist who has made foundational contributions toprogramming languages ,algorithms ,operating systems ,formal verification , andconcurrent computing .[ 3] His work earned him theTuring Award , usually regarded as the highest distinction in computer science, in 1980.
Hoare developed thesorting algorithm quicksort in 1959–1960.[ 4] He developedHoare logic , anaxiomatic basis for verifyingprogram correctness . In the semantics ofconcurrency , he introduced the formal languagecommunicating sequential processes (CSP) to specify the interactions of concurrent processes, and along withEdsger Dijkstra , formulated thedining philosophers problem .[ 5] [ 6] [ 7] [ 8] [ 9] [ 10] Since 1977, he has held positions at theUniversity of Oxford andMicrosoft Research inCambridge .
Education and early life [ edit ] Tony Hoare was born inColombo , Ceylon (nowSri Lanka ) to British parents; his father was a colonialcivil servant and his mother was the daughter of a tea planter. Hoare was educated inEngland at theDragon School inOxford and theKing's School inCanterbury .[ 11] He then studiedClassics and Philosophy ("Greats") atMerton College, Oxford .[ 12] On graduating in 1956 he did 18 monthsNational Service in theRoyal Navy ,[ 12] where he learned Russian.[ 13] He returned to theUniversity of Oxford in 1958 to study for a postgraduate certificate instatistics ,[ 12] and it was here that he begancomputer programming , having been taughtAutocode on theFerranti Mercury byLeslie Fox .[ 14] He then went toMoscow State University as aBritish Council exchange student,[ 12] where he studiedmachine translation underAndrey Kolmogorov .[ 13]
Research and career [ edit ] In 1960, Hoare left theSoviet Union and began working atElliott Brothers Ltd ,[ 12] a small computer manufacturing firm located in London. There, he implemented the languageALGOL 60 and began developing majoralgorithms .[ 15] [ 16]
He was involved with developinginternational standards in programming and informatics, as a member of theInternational Federation for Information Processing (IFIP)Working Group 2.1 on Algorithmic Languages and Calculi,[ 17] whichspecified , maintains, and supports the languages ALGOL 60 andALGOL 68 .[ 18]
He became the Professor ofComputing Science at theQueen's University of Belfast in 1968, and in 1977 returned to Oxford as the Professor of Computing to lead theProgramming Research Group in theOxford University Computing Laboratory (nowDepartment of Computer Science, University of Oxford ), following the death ofChristopher Strachey . He became the firstChristopher Strachey Professor of Computing on its establishment in 1988 until his retirement at Oxford in 2000.[ 19] He is now anEmeritus Professor there, and is also a principal researcher atMicrosoft Research inCambridge , England.[ 20] [ 21] [ 22]
Hoare's most significant work has been in the following areas: his sorting and selection algorithm (Quicksort andQuickselect ),Hoare logic , the formal languagecommunicating sequential processes (CSP) used to specify the interactions betweenconcurrent processes (and implemented in various programming languages such asoccam ), structuring computeroperating systems using themonitor concept, and theaxiomatic specification ofprogramming languages .[ 23] [ 24]
Speaking at a software conference in 2009, Tony Hoare hyperbolically apologized for inventing thenull reference :[ 25] [ 26]
I call it my billion-dollar mistake. It was the invention of the null reference in 1965. At that time, I was designing the first comprehensive type system for references in an object oriented language (ALGOL W ). My goal was to ensure that all use of references should be absolutely safe, with checking performed automatically by the compiler. But I couldn't resist the temptation to put in a null reference, simply because it was so easy to implement. This has led to innumerable errors, vulnerabilities, and system crashes, which have probably caused a billion dollars of pain and damage in the last forty years.[ 27]
For many years under his leadership, Hoare's Oxford department worked on formal specification languages such asCSP andZ . These did not achieve the expected take-up by industry, and in 1995 Hoare was led to reflect upon the original assumptions:[ 28]
Ten years ago, researchers into formal methods (and I was the most mistaken among them) predicted that the programming world would embrace with gratitude every assistance promised by formalisation to solve the problems of reliability that arise when programs get large and more safety-critical. Programs have now got very large and very critical – well beyond the scale which can be comfortably tackled by formal methods. There have been many problems and failures, but these have nearly always been attributable to inadequate analysis of requirements or inadequate management control. It has turned out that the world just does not suffer significantly from the kind of problem that our research was originally intended to solve.
A commemorative article was written in tribute to Hoare for his 90th birthday.[ 29]
ACM Programming Systems and Languages Paper Award (1973)[ 30] for the paper "Proof of correctness of data representations"[ 31] Distinguished Fellow of the British Computer Society (1978)Turing Award for "fundamental contributions to the definition and design ofprogramming languages ". The award was presented to him at the ACM Annual Conference inNashville, Tennessee , on 27 October 1980, by Walter Carlson, chairman of the Awards committee. A transcript of Hoare's speech[ 32] was published inCommunications of the ACM .[ 15] Harry H. Goode Memorial Award (1981)Fellow of the Royal Society (1982)[ 33] Honorary Doctorate of Science by theQueen's University Belfast (1987) Honorary Doctorate of Science, from theUniversity of Bath (1993)[ 34] Honorary Fellow,Kellogg College, Oxford (1998)[ 35] Knighted for services to education andcomputer science (2000 )Kyoto Prize forInformation science (2000)Fellow [ 36] of theRoyal Academy of Engineering [ 36] (2005)Member of theNational Academy of Engineering (2006) for fundamental contributions to computer science in the areas of algorithms, operating systems, and programming languages. Computer History Museum (CHM) inMountain View, California Fellow of the Museum "for development of theQuicksort algorithm and for lifelong contributions to the theory ofprogramming languages " (2006)[ 37] Honorary Doctorate fromHeriot-Watt University (2007)[ 38] Honorary Doctorate of Science from the Department of Informatics of theAthens University of Economics and Business (AUEB) (2007) Friedrich L. Bauer-Prize,Technical University of Munich (2007)[ 39] SIGPLAN Programming Languages Achievement Award (2011)[ 40] IEEE John von Neumann Medal (2011)[ 41] Honorary Doctorate,University of Warsaw (2012)[ 42] Honorary Doctorate,Complutense University of Madrid (2013)[ 43] Royal Medal of the Royal Society (2023)[ 44] In 1962, Hoare marriedJill Pym , a member of his research team.[ 45]
^a b Tony Hoare at theMathematics Genealogy Project ^ Sampaio, Augusto (1993).An algebraic approach to compiler design .bodleian.ox.ac.uk (DPhil thesis). University of Oxford.OCLC 854973008 .EThOS uk.bl.ethos.334903 . [permanent dead link ] ^ Jones, Cliff B. ;Misra, Jayadev , eds. (2021).Theories of Programming: The Life and Works of Tony Hoare . ACM Books. Vol. 39. New York, NY:Association for Computing Machinery .doi :10.1145/3477355 .ISBN 978-1-4503-8728-6 .S2CID 238251696 .^ "Sir Antony Hoare" . Computer History Museum. Archived fromthe original on 3 April 2015. Retrieved22 April 2015 .^ Tony Hoare author profile page at theACM Digital Library^ C. A. R. Hoare atDBLP Bibliography Server^ Tony Hoare publications indexed byMicrosoft Academic ^ Shustek, L. (2009). "Interview: An interview with C.A.R. Hoare".Communications of the ACM .52 (3):38– 41.doi :10.1145/1467247.1467261 .S2CID 1868477 . ^ Hoare, C. A. R. (1974)."Monitors: An operating system structuring concept" .Communications of the ACM .17 (10):549– 557.doi :10.1145/355620.361161 .S2CID 1005769 . ^ Bowen, Jonathan (8 September 2006).Oral History of Sir Antony Hoare .Hoare (Sir Antony, C.A.R.) Oral History, CHM Reference number: X3698.2007 (Report).Computer History Museum . Archived from the original on 3 July 2013. Retrieved18 April 2014 .{{cite report }}
: CS1 maint: bot: original URL status unknown (link )^ Lean, Thomas (2011)."Professor Sir Tony Hoare" (PDF) .National Life Stories: An Oral History of British Science . UK:British Library .Archived (PDF) from the original on 15 September 2014. Retrieved15 September 2014 . ^a b c d e Levens, R.G.C., ed. (1964).Merton College Register 1900-1964 . Oxford: Basil Blackwell. p. 434. ^a b Hoare, Tony (Autumn 2009)."My Early Days at Elliotts" .Resurrection (48).ISSN 0958-7403 . Retrieved27 May 2014 . ^ Roscoe, Bill ;Jones, Cliff (2010)."1 Insight, inspiration and collaboration" (PDF) .Reflections on the Work of C.A.R. Hoare .Springer .ISBN 978-1-84882-911-4 .Archived (PDF) from the original on 9 October 2022.^a b Hoare, C.A.R. (February 1981)."The emperor's old clothes" .Communications of the ACM .24 (2):5– 83.doi :10.1145/358549.358561 .ISSN 0001-0782 . ^ Hoare, C. A. R. (1981)."The emperor's old clothes" .Communications of the ACM .24 (2):75– 83.doi :10.1145/358549.358561 . ^ Jeuring, Johan;Meertens, Lambert ; Guttmann, Walter (17 August 2016)."Profile of IFIP Working Group 2.1" .Foswiki . Retrieved7 October 2020 . ^ Swierstra, Doaitse;Gibbons, Jeremy ;Meertens, Lambert (2 March 2011)."ScopeEtc: IFIP21: Foswiki" .Foswiki . Retrieved7 October 2020 . ^ "Christopher Strachey Professorship of Computing" .Department of Computer Science, University of Oxford . 5 November 2021. Retrieved18 January 2024 .^ Microsoft home page – short biography^ Oral history interview with C. A. R. Hoare atCharles Babbage Institute , University of Minnesota, Minneapolis.^ The classic article on monitors – The original article on monitors^ "Preface to the ACM Turing Award lecture" (PDF) . Archived fromthe original (PDF) on 19 April 2012.^ "C. Antony (Tony) R. Hoare" . Archived fromthe original on 1 July 2012.^ Hoare, Tony (25 August 2009)."Null References: The Billion Dollar Mistake" . InfoQ.com. ^ "Null: The Billion Dollar Mistake" . hashnode.com. 3 September 2020.^ Hoare, Tony (2009)."Null References: The Billion Dollar Mistake" (Presentation abstract). QCon London.Archived from the original on 28 June 2009. ^ Hoare, C. A. R. (1996). "Unification of Theories: A Challenge for Computing Science".Selected papers from the 11th Workshop on Specification of Abstract Data Types Joint with the 8th COMPASS Workshop on Recent Trends in Data Type Specification . Springer-Verlag. pp. 49– 57.ISBN 3-540-61629-2 . ^ Jifeng, He ;Jones, Cliff ;Roscoe, Bill ;Stoy, Joe ;Sufrin, Bernard ;Bowen, Jonathan P. (2 July 2024).Denvir, Tim (ed.)."Tony Hoare @ 90" (PDF) .FACS FACTS (Magazine article). Formal Aspects of Computing Science (FACS ) Specialist Group. pp. 5– 42.ISSN 0950-1231 .Archived (PDF) from the original on 10 July 2024. Retrieved10 July 2024 .^ "ACM Programming Systems and Languages Paper Award" . Association for Computing Machinery. 1973. Retrieved7 July 2022 .^ Hoare, C.A.R. (1972)."Proof of correctness of data representations" .Communications of the ACM .1 (4):271– 281.doi :10.1007/BF00289507 .S2CID 34414224 .^ Hoare, Charles Anthony Richard (27 October 1980)."The Emperor's Old Clothes: The 1980 ACM Turing Award Lecture" (PDF) . Association for Computing Machinery. Archived fromthe original (PDF) on 19 April 2012. ^ Anon (1982)."Anthony Hoare FRS" .royalsociety.org . London:Royal Society . ^ "Honorary Graduates 1989 to present" .bath.ac.uk .University of Bath . Archived fromthe original on 17 July 2010. Retrieved18 February 2012 .^ "(Charles) Antony Richard (Tony) Hoare Biography" . Archived fromthe original on 17 July 2014.^a b "List of Fellows" . Archived fromthe original on 8 June 2016. Retrieved17 October 2014 .^ "Sir Antony Hoare: 2006 Fellow" . Archived fromthe original on 3 April 2015. Retrieved8 March 2020 ."Sir Antony Hoare | Computer History Museum" . Archived fromthe original on 3 April 2015. Retrieved22 April 2015 .^ "Annual Review 2007: Principal's Review" .www1.hw.ac.uk . Archived fromthe original on 5 March 2016. Retrieved29 March 2016 .^ "Preisverleihung auf der Festveranstaltung "40 Jahre Informatik in München": TU München vergibt Friedrich L. Bauer-Preis an Tony Hoare" (in German).Technical University of Munich . 26 October 2007. Archived fromthe original on 10 June 2016. Retrieved14 May 2016 .^ "Programming Languages Achievement Award 2011" . ACM. Retrieved28 August 2012 .^ "IEEE John von Neumann Medal Recipients" (PDF) . IEEE. Archived fromthe original (PDF) on 9 October 2022. Retrieved26 February 2011 .^ Krzysztof, Diks (15 November 2012)."Profesor Hoare doktorem honoris causa Uniwersytetu Warszawskiego" (in Polish).University of Warsaw . Archived fromthe original on 26 August 2014. Retrieved26 November 2012 . ^ "Los informáticos Tony Hoare y Mateo Valero serán investidos hoy doctores honoris causa por la Complutense" (in Spanish). 10 May 2013. Retrieved10 May 2013 .^ Royal Medal 2023 ^ Jones, Cliff ;Roscoe, A. W. ; Wood, Kenneth R., eds. (2010).Reflections on the Work of C.A.R. Hoare . Springer Science. p. 3 .Bibcode :2010rwch.book.....R . This article incorporatestext available under theCC BY 4.0 license.
Fields Concepts Orientations Models
Developmental Other Languages
Related fields
International National Academics People Other