Sir Charles Antony Richard Hoare (Tony Hoare or C. A. R. Hoare)
(born 11 January 1934) is a British
computer scientist
A computer scientist is a person who is trained in the academic study of computer science.
Computer scientists typically work on the theoretical side of computation, as opposed to the hardware side on which computer engineers mainly focus (a ...
who has made foundational contributions to
programming languages,
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s,
operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
s,
formal verification
In the context of hardware and software systems, formal verification is the act of proving or disproving the correctness of intended algorithms underlying a system with respect to a certain formal specification or property, using formal met ...
, and
concurrent computing. His work earned him the
Turing Award
The ACM A. M. Turing Award is an annual prize given by the Association for Computing Machinery (ACM) for contributions of lasting and major technical importance to computer science. It is generally recognized as the highest distinction in compu ...
, usually regarded as the highest distinction in computer science, in 1980.
Hoare developed the
sorting algorithm quicksort in 1959–1960. He developed
Hoare logic
Hoare logic (also known as Floyd–Hoare logic or Hoare rules) is a formal system with a set of logical rules for reasoning rigorously about the correctness of computer programs. It was proposed in 1969 by the British computer scientist and l ...
, an
axiomatic basis for verifying
program correctness. In the semantics of
concurrency, he introduced the formal language
communicating sequential processes (CSP) to specify the interactions of concurrent processes, and along with
Edsger Dijkstra, formulated the
dining philosophers problem.
He is also credited with development (and later criticism) of the
null pointer
In computing, a null pointer or null reference is a value saved for indicating that the pointer or reference does not refer to a valid object. Programs routinely use null pointers to represent conditions such as the end of a list of unknown leng ...
, having introduced it in the
ALGOL family of languages. Since 1977, he has held positions at the
University of Oxford
, mottoeng = The Lord is my light
, established =
, endowment = £6.1 billion (including colleges) (2019)
, budget = £2.145 billion (2019–20)
, chancellor ...
and
Microsoft Research in
Cambridge
Cambridge ( ) is a university city and the county town in Cambridgeshire, England. It is located on the River Cam approximately north of London. As of the 2021 United Kingdom census, the population of Cambridge was 145,700. Cambridge bec ...
.
Education and early life
Tony Hoare was born in
Colombo
Colombo ( ; si, කොළඹ, translit=Koḷam̆ba, ; ta, கொழும்பு, translit=Koḻumpu, ) is the executive and judicial capital and largest city of Sri Lanka by population. According to the Brookings Institution, Colombo me ...
, Ceylon (now
Sri Lanka
Sri Lanka (, ; si, ශ්රී ලංකා, Śrī Laṅkā, translit-std=ISO (); ta, இலங்கை, Ilaṅkai, translit-std=ISO ()), formerly known as Ceylon and officially the Democratic Socialist Republic of Sri Lanka, is an ...
) to British parents; his father was a colonial
civil servant and his mother was the daughter of a tea planter. Hoare was educated in
England
England is a country that is part of the United Kingdom. It shares land borders with Wales to its west and Scotland to its north. The Irish Sea lies northwest and the Celtic Sea to the southwest. It is separated from continental Europe ...
at the
Dragon School
("Reach for the Sun")
, established = 1877
, closed =
, type = Preparatory day and boarding school and Pre-Prep school
, religion = Church of England
, president =
, head_label = Head
, head = Emma Goldsm ...
in
Oxford
Oxford () is a city in England. It is the county town and only city of Oxfordshire. In 2020, its population was estimated at 151,584. It is north-west of London, south-east of Birmingham and north-east of Bristol. The city is home to the ...
and the
King's School in
Canterbury
Canterbury (, ) is a cathedral city and UNESCO World Heritage Site, situated in the heart of the City of Canterbury local government district of Kent, England. It lies on the River Stour.
The Archbishop of Canterbury is the primate of t ...
.
He then studied
Classics and Philosophy ("Greats") at
Merton College, Oxford.
On graduating in 1956 he did 18 months
National Service
National service is the system of voluntary government service, usually military service. Conscription is mandatory national service. The term ''national service'' comes from the United Kingdom's National Service (Armed Forces) Act 1939.
The ...
in the
Royal Navy
The Royal Navy (RN) is the United Kingdom's naval warfare force. Although warships were used by English and Scottish kings from the early medieval period, the first major maritime engagements were fought in the Hundred Years' War against Fr ...
,
where he learned Russian.
He returned to the
University of Oxford
, mottoeng = The Lord is my light
, established =
, endowment = £6.1 billion (including colleges) (2019)
, budget = £2.145 billion (2019–20)
, chancellor ...
in 1958 to study for a postgraduate certificate in
statistics
Statistics (from German: '' Statistik'', "description of a state, a country") is the discipline that concerns the collection, organization, analysis, interpretation, and presentation of data. In applying statistics to a scientific, indust ...
,
and it was here that he began
computer programming
Computer programming is the process of performing a particular computation (or more generally, accomplishing a specific computing result), usually by designing and building an executable computer program. Programming involves tasks such as anal ...
, having been taught
Autocode on the
Ferranti Mercury by
Leslie Fox. He then went to
Moscow State University as a
British Council exchange student,
where he studied
machine translation
Machine translation, sometimes referred to by the abbreviation MT (not to be confused with computer-aided translation, machine-aided human translation or interactive translation), is a sub-field of computational linguistics that investigates ...
under
Andrey Kolmogorov
Andrey Nikolaevich Kolmogorov ( rus, Андре́й Никола́евич Колмого́ров, p=ɐnˈdrʲej nʲɪkɐˈlajɪvʲɪtɕ kəlmɐˈɡorəf, a=Ru-Andrey Nikolaevich Kolmogorov.ogg, 25 April 1903 – 20 October 1987) was a Sovi ...
.
Research and career
In 1960, Hoare left the
Soviet Union
The Soviet Union,. officially the Union of Soviet Socialist Republics. (USSR),. was a transcontinental country that spanned much of Eurasia from 1922 to 1991. A flagship communist state, it was nominally a federal union of fifteen nationa ...
and began working at
Elliott Brothers Ltd,
a small computer manufacturing firm located in London. There, he implemented the language
ALGOL 60 and began developing major
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
s.
He was involved with developing
international standard
international standard is a technical standard developed by one or more international standards organization, standards organizations. International standards are available for consideration and use worldwide. The most prominent such organization ...
s in programming and informatics, as a member of the
International Federation for Information Processing (IFIP)
Working Group 2.1 on Algorithmic Languages and Calculi, which
specified, maintains, and supports the languages ALGOL 60 and
ALGOL 68.
He became the Professor of
Computing Science
Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (including ...
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
The Department of Computer Science is the computer science department of the University of Oxford, England, which is part of the university's Mathematical, Physical and Life Sciences Division. It was founded in 1957 as the 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
Cambridge ( ) is a university city and the county town in Cambridgeshire, England. It is located on the River Cam approximately north of London. As of the 2021 United Kingdom census, the population of Cambridge was 145,700. Cambridge bec ...
, England.
Hoare's most significant work has been in the following areas: his sorting and selection algorithm (
Quicksort and
Quickselect),
Hoare logic
Hoare logic (also known as Floyd–Hoare logic or Hoare rules) is a formal system with a set of logical rules for reasoning rigorously about the correctness of computer programs. It was proposed in 1969 by the British computer scientist and l ...
, the formal language
communicating sequential processes (CSP) used to specify the interactions between
concurrent process
Concurrent computing is a form of computing in which several computations are executed '' concurrently''—during overlapping time periods—instead of ''sequentially—''with one completing before the next starts.
This is a property of a syst ...
es (and implemented in various programming languages such as
occam), structuring computer
operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
s using the
monitor
Monitor or monitor may refer to:
Places
* Monitor, Alberta
* Monitor, Indiana, town in the United States
* Monitor, Kentucky
* Monitor, Oregon, unincorporated community in the United States
* Monitor, Washington
* Monitor, Logan County, West ...
concept, and the
axiomatic specification of
programming language
A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language.
The description of a programming ...
s.
Speaking at a software conference in 2009, Tony Hoare apologized for inventing the
null reference:
For many years under his leadership, Hoare's Oxford department worked on formal specification languages such as
CSP and
Z. These did not achieve the expected take-up by industry, and in 1995 Hoare was led to reflect upon the original assumptions:
Awards and honours
*
Distinguished Fellow of the British Computer Society
Distinguished Fellow of the British Computer Society (DFBCS or DistFBCS) is an award and fellowship granted by the British Computer Society for members of the computing profession who have made an outstanding contribution to the advancement of co ...
(1978)
*
Turing Award
The ACM A. M. Turing Award is an annual prize given by the Association for Computing Machinery (ACM) for contributions of lasting and major technical importance to computer science. It is generally recognized as the highest distinction in compu ...
for "fundamental contributions to the definition and design of
programming language
A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language.
The description of a programming ...
s". The award was presented to him at the ACM Annual Conference in
Nashville, Tennessee
Nashville is the capital city of the U.S. state of Tennessee and the seat of Davidson County. With a population of 689,447 at the 2020 U.S. census, Nashville is the most populous city in the state, 21st most-populous city in the U.S., and ...
, on 27 October 1980, by Walter Carlson, chairman of the Awards committee. A transcript of Hoare's speech
was published in ''
Communications of the ACM
''Communications of the ACM'' is the monthly journal of the Association for Computing Machinery (ACM). It was established in 1958, with Saul Rosen as its first managing editor. It is sent to all ACM members.
Articles are intended for readers wi ...
''.
*
Harry H. Goode Memorial Award
The Harry H. Goode Memorial Award is an IEEE Computer Society annual awards in honor of Harry H. Goode for achievements in the information processing field which are considered either a single contribution of theory, design, or technique of outsta ...
(1981)
*
Fellow of the Royal Society
Fellowship of the Royal Society (FRS, ForMemRS and HonFRS) is an award granted by the judges of the Royal Society of London to individuals who have made a "substantial contribution to the improvement of natural knowledge, including mathemati ...
(1982)
* Honorary Doctorate of Science by the
Queen's University Belfast (1987)
* Honorary Doctorate of Science, from the
University of Bath (1993)
* Honorary Fellow,
Kellogg College, Oxford (1998)
*
Knighted for services to education and
computer science
Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to Applied science, practical discipli ...
(
2000)
*
Kyoto Prize for
Information science
Information science (also known as information studies) is an academic field which is primarily concerned with analysis, collection, classification, manipulation, storage, retrieval, movement, dissemination, and protection of information. ...
(2000)
*
Fellow
A fellow is a concept whose exact meaning depends on context.
In learned or professional societies, it refers to a privileged member who is specially elected in recognition of their work and achievements.
Within the context of higher education ...
of the
Royal Academy of Engineering (2005)
* Member of the
National Academy of Engineering (2006) for fundamental contributions to computer science in the areas of algorithms, operating systems, and programming languages.
*
Computer History Museum
The Computer History Museum (CHM) is a museum of computer history, located in Mountain View, California. The museum presents stories and artifacts of Silicon Valley and the information age, and explores the computing revolution and its impact o ...
(CHM) in
Mountain View, California
Mountain View is a city in Santa Clara County, California, United States. Named for its views of the Santa Cruz Mountains, it has a population of 82,376.
Mountain View was integral to the early history and growth of Silicon Valley, and is t ...
Fellow of the Museum "for development of the
Quicksort algorithm and for lifelong contributions to the theory of
programming language
A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language.
The description of a programming ...
s" (2006)
* Honorary Doctorate from
Heriot-Watt University (2007)
* Honorary Doctorate of Science from the Department of Informatics of the
Athens University of Economics and Business
Athens University of Economics and Business (AUEB; el, Οικονομικό Πανεπιστήμιο Αθηνών, ''Oikonomiko Panepistimio Athinon'', abbrev. ΟΠΑ, OPA) was founded in 1920 in Athens, Greece and is the oldest university in G ...
(AUEB) (2007)
* Friedrich L. Bauer-Prize,
Technical University of Munich
The Technical University of Munich (TUM or TU Munich; german: Technische Universität München) is a public research university in Munich, Germany. It specializes in engineering, technology, medicine, and applied science, applied and Natural sci ...
(2007)
*
SIGPLAN Programming Languages Achievement Award (2011)
*
IEEE John von Neumann Medal (2011)
* Honorary Doctorate,
University of Warsaw
The University of Warsaw ( pl, Uniwersytet Warszawski, la, Universitas Varsoviensis) is a public university in Warsaw, Poland. Established in 1816, it is the largest institution of higher learning in the country offering 37 different fields of ...
(2012)
* Honorary Doctorate,
Complutense University of Madrid
The Complutense University of Madrid ( es, Universidad Complutense de Madrid; UCM, links=no, ''Universidad de Madrid'', ''Universidad Central de Madrid''; la, Universitas Complutensis Matritensis, links=no) is a public research university loc ...
(2013)
* 1973 ACM Programming Systems and Languages Paper Award, for the paper "Proof of correctness of data representations"
Personal life
In 1962, Hoare married Jill Pym, a member of his research team.
Books
*
* C. A. R. Hoare (1985). ''
Communicating Sequential Processes''.
Prentice Hall International Series in Computer Science. (hardback) or (paperback). (Available online at http://www.usingcsp.com/ in PDF format.)
*
*
*
References
External links
*
{{DEFAULTSORT:Hoare, Tony
1934 births
Living people
People from Colombo
People educated at The Dragon School
People educated at The King's School, Canterbury
Alumni of Merton College, Oxford
Academics of Queen's University Belfast
British computer scientists
Fellows of the British Computer Society
Fellows of the Royal Academy of Engineering
Fellows of the Royal Society
Foreign associates of the National Academy of Sciences
Fellows of Wolfson College, Oxford
Formal methods people
History of computing in the United Kingdom
Knights Bachelor
Kyoto laureates in Advanced Technology
Members of the Department of Computer Science, University of Oxford
Microsoft employees
Moscow State University alumni
Programming language researchers
Turing Award laureates
Computer science writers
British expatriates in Sri Lanka
British expatriates in the Soviet Union
Fellows of Merton College, Oxford