Tony Hoare
| Sir Charles Antony Richard Hoare | |
|---|---|
Sir Charles Antony Richard Hoare giving a conference at the EPFL on 20 June 2011 |
|
| Born | 11 January 1934 Colombo, Sri Lanka |
| Residence | Cambridge |
| Fields | Computer Scientist |
| Institutions | Elliott Brothers Queen's University Belfast Oxford University Moscow State University Microsoft Research |
| Alma mater | Oxford University Moscow State University |
| Doctoral students | Stephen Brookes Cliff Jones David Naumann Bill Roscoe William Stewart |
| Known for | Quicksort Hoare logic CSP |
| Notable awards | ACM Turing Award |
Sir Charles Antony Richard Hoare (born 11 January 1934),[1] commonly known as Tony Hoare or C. A. R. Hoare, is a British computer scientist best known for the development (in 1960, at age 26) of Quicksort, one of the world's most widely used sorting algorithms. He also developed Hoare logic for verifying program correctness, and the formal language Communicating Sequential Processes (CSP) to specify the interactions of concurrent processes (including the dining philosophers problem) and the inspiration for the occam programming language.
Contents |
[edit] Biography
Born in Colombo, Ceylon (now Sri Lanka) to British parents, he received his Bachelor's degree in Classics from the University of Oxford (Merton College) in 1956. He remained an extra year at Oxford studying graduate-level statistics, and following his National Service in the Royal Navy (1956–1958). While he studied Russian, he also studied computer translation of human languages at the Moscow State University in the Soviet Union in the school of Kolmogorov.
In 1960, he left the Soviet Union and began working at Elliott Brothers, Ltd, a small computer manufacturing firm, where he implemented ALGOL 60 and began developing major algorithms.[2] He became the Professor of Computing Science at the Queen's University of Belfast in 1968, and in 1977 returned to Oxford as the Professor of Computing to lead the Programming Research Group in the Oxford University Computing Laboratory (now Department of Computer Science, University of Oxford), following the death of Christopher Strachey. He is now an Emeritus Professor there, and is also a principal researcher at Microsoft Research in Cambridge, England.
Hoare's most significant work has been in the following areas: his sorting algorithm (Quicksort), Hoare logic, the formal language Communicating Sequential Processes (CSP) used to specify the interactions between concurrent processes, structuring computer operating systems using the monitor concept, and the axiomatic specification of programming languages.[3][4]
In 1982, he was elected a Fellow of the Royal Society.[5]
[edit] Quotations
The famous quotation, "We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil", by Donald Knuth,[6] has also been mistakenly attributed to Hoare (by Knuth himself),[7] although Hoare disclaims authorship.[8]
Speaking at a conference in 2009, Hoare apologized for inventing the null reference:[9][10]
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.
Another quotation around the difficulty of creating software systems which are not overly complex states:
There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.
[edit] Awards
- ACM Turing Award for "fundamental contributions to the definition and design of programming languages". The award was presented to him at the ACM Annual Conference in Nashville, Tennessee, on 27 October 1980, by Walter Carlson, Chairman of the Awards committee. A transcript of Hoare's speech[11] was published in Communications of the ACM.[2]
- Harry H. Goode Memorial Award (1981)
- Fellow of the Royal Society (1982)
- Honorary Doctorate of Science by the Queen's University Belfast (1987)
- Knighted for services to education and computer science (2000)
- Kyoto Prize for Information science (2000)
- Fellow of the Royal Academy of Engineering (2005)
- Computer History Museum (CHM) in Mountain View, California Fellow of the Museum "for development of the Quicksort algorithm and for lifelong contributions to the theory of programming languages" (2006)
- Honorary Doctorate of Science from the Department of Informatics of the Athens University of Economics and Business (AUEB) (2007)
- IEEE John von Neumann Medal (2011)[12]
- Honorary Doctorate of Science, from the University of Bath (1993)[13]
[edit] Books
- O.-J. Dahl, E. W. Dijkstra and C. A. R. Hoare (1972). Structured Programming. Academic Press. ISBN 0-12-200550-3. OCLC 23937947.
- C. A. R. Hoare (1985). Communicating Sequential Processes. (available online at http://www.usingcsp.com/ in PDF format). Prentice Hall International Series in Computer Science. ISBN 0-13-153271-5 hardback or ISBN 0-13-153289-8 paperback.
- C. A. R. Hoare and M. J. C. Gordon (1992). Mechanised Reasoning and Hardware Design. Prentice Hall International Series in Computer Science. ISBN 0-13-572405-8. OCLC 25712842.
- C. A. R. Hoare and He Jifeng (1998). Unifying Theories of Programming. Prentice Hall International Series in Computer Science. ISBN 0-13-458761-8. OCLC 38199961.
[edit] References
- ^ "Birthdays Jan 10". The Times (London). 10 January 2009. http://www.timesonline.co.uk/tol/life_and_style/court_and_social/article5484753.ece. Retrieved 9 January 2010.
- ^ a b C.A.R. Hoare (February 1981). "The emperor's old clothes" (PDF). Communications of the ACM 24 (2): 5–83. doi:10.1145/358549.358561. ISSN 0001-0782. http://portal.acm.org/citation.cfm?id=358561.
- ^ Preface to the ACM Turing Award lecture.
- ^ ACM Turing Award citation.
- ^ "Fellows". Royal Society. http://royalsociety.org/about-us/fellowship/fellows/. Retrieved 20 November 2010.
- ^ Knuth, Donald: Structured Programming with Goto Statements. Computing Surveys 6:4 (1974), 261–301.
- ^ The Errors of Tex, in Software—Practice & Experience, Volume 19, Issue 7 (July 1989), pp. 607–685, reprinted in his book Literate Programming (p. 276)
- ^ Hoare, a 2004 email.
- ^ Hoare, Tony (2009-03-09). "Null References: The Billion Dollar Mistake". QCon London. http://qconlondon.com/london-2009/presentation/Null+References:+The+Billion+Dollar+Mistake.
- ^ Hoare, Tony (2009-08-25). "Null References: The Billion Dollar Mistake". InfoQ.com. http://www.infoq.com/presentations/Null-References-The-Billion-Dollar-Mistake-Tony-Hoare.
- ^ Hoare, Charles Anthony Richard (1980-10-27). "The Emperor's Old Clothes / The 1980 ACM Turing Award Lecture". Association for Computing Machinery. Archived from the original on 2012-02-03. http://www.webcitation.org/65BW96PjQ.
- ^ "IEEE John von Neumann Medal Recipients". IEEE. http://www.ieee.org/documents/von_neumann_rl.pdf. Retrieved February 26, 2011.
- ^ "Honorary Graduates 1989 to present". bath.ac.uk. University of Bath. http://www.bath.ac.uk/ceremonies/hongrads/. Retrieved 18 February 2012.
[edit] Further reading
- Bowen, Jonathan (8 September 2006). "Oral History of Sir Antony Hoare". Hoare (Sir Antony, C.A.R.) Oral History, CHM Reference number: X3698.2007 (Computer History Museum). http://archive.computerhistory.org/resources/access/text/Oral_History/102658017.05.01.acc.pdf. Retrieved 23 October 2011.
- Shustek, Len, ed. (March 2009). "An Interview with C.A.R. Hoare". Communications of the ACM 52 (3): 38–41. doi:10.1145/1467247.1467261.
[edit] External links
| Wikiquote has a collection of quotations related to: Tony Hoare |
- Microsoft home page — short biography
- Oral history interview with C. A. R. Hoare (or -- try this) at Charles Babbage Institute, University of Minnesota, Minneapolis.
- List of publications from the DBLP Bibliography Server.
- List of publications from Microsoft Academic Search.
- The classic article on monitors — The original article on monitors
|
|||||||||||||||||||||||||||||||
- 1934 births
- Living people
- Academics of Queen's University Belfast
- Alumni of Merton College, Oxford
- Computer pioneers
- British computer scientists
- Fellows of the British Computer Society
- Fellows of the Royal Academy of Engineering
- Fellows of the Royal Society
- Fellows of Wolfson College, Oxford
- Formal methods people
- Honorary Fellows of Darwin College, Cambridge
- Honorary Fellows of Merton College, Oxford
- Knights Bachelor
- Members of IFIP Technical Committee 1
- Members of IFIP Working Group 2.1
- Members of IFIP Working Group 2.3
- Members of Oxford University Computing Laboratory
- Microsoft employees
- Moscow State University alumni
- Programming language researchers
- Turing Award laureates
- Computer science writers
- British expatriates in Sri Lanka