1. REDIRECT Template:Copy edit

Template:Infobox Scientist 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.


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 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 a Professor of Computing Science at the Queen's University of Belfast in 1968, and in 1977 returned to Oxford as a Professor of Computing to lead the Programming Research Group in the Oxford University Computing Laboratory, 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[3][4] 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.


The famous quote, "We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil", by Donald Knuth,[5] has also been mistakenly attributed to Hoare (by Knuth himself),[6] although Hoare disclaims authorship.[7]

Speaking at a conference in 2009, Hoare apologized for inventing the null reference:[8][9]

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 quote 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.




  1. The Times 10 January 2009, Retrieved 2010-01-09
  2. 2.0 2.1 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. Template:ISSN. 
  3. preface to the ACM Turing Award lecture
  4. ACM Turing Award citation
  5. Knuth, Donald: Structured Programming with Goto Statements. Computing Surveys 6:4 (1974), 261–301.
  6. 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)
  7. Tony Hoare, a 2004 email
  8. Hoare, Tony (2009-03-09). "Null References: The Billion Dollar Mistake". QCon London. 
  9. Tony Hoare (2009-08-25). "Null References: The Billion Dollar Mistake". 

External links

Ad blocker interference detected!

Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.