search
Get Started
search
Tony Hoare - Computer Scientist
zoom_in Click to enlarge

Tony Hoare

description Tony Hoare Overview

Sir Charles Antony Richard Hoare, known as Tony Hoare, was a British computer scientist whose work connected practical algorithms with rigorous reasoning about software. He developed Quicksort beginning in 1959, using a divide-and-conquer approach that partitions data into smaller sorting problems. He also created Hoare logic, a formal system for expressing what must hold before and after a program runs. These contributions address different needs: performing useful work efficiently and proving that software meets stated conditions.

His influence extends across algorithm design and formal methods, where mathematical reasoning is used to examine program behavior. The 1980 ACM Turing Award recognized his fundamental contributions to programming language definition and design. His work is especially relevant to students and practitioners interested in the relationship between implementation and correctness.

help Tony Hoare FAQ

How does the Quicksort algorithm that Tony Hoare invented work?

Hoare developed Quicksort in 1959 while a visiting student at Moscow State University, working on a machine translation project. The algorithm selects a pivot element and partitions the array so that smaller elements precede and larger ones follow the pivot, then recursively sorts each partition, yielding an average time complexity of O(n log n).

What did Tony Hoare call his 'billion-dollar mistake'?

Hoare famously referred to his 1965 invention of the null reference as his 'billion-dollar mistake,' arguing that null pointers have caused countless crashes and security vulnerabilities over the decades. He introduced null references in the ALGOL W language and publicly expressed regret at the QCon conference in London in 2009.

What is Hoare logic and what is it used for?

Hoare logic, introduced by Hoare in 1969, is a formal system using 'Hoare triples' — written {P} C {Q} — to rigorously prove that a program command C transforms precondition P into postcondition Q. This work laid the foundation for modern program verification and the field of formal methods in software engineering.

What is Communicating Sequential Processes (CSP) that Tony Hoare developed?

Hoare developed CSP in 1978 as a formal language for describing and reasoning about patterns of interaction in concurrent systems. CSP later influenced the concurrency model of Google's Go programming language and remains a cornerstone of process algebra theory.

Reviews & Comments

Write a Review

rate_review

Be the first to review

Share your thoughts with the community and help others make better decisions.

Save to your list

Save your favorites and follow how their scores change over time.

Save favorites
Track changes
Compare scores

Already have an account? Sign in

Compare Items

See how they stack up against each other

Comparing
VS
Select 1 more item to compare