Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Tony Hoare
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Research and career== In 1960, Hoare left the [[Soviet Union]] and began working at [[Elliott Brothers (computer company)|Elliott Brothers Ltd]],<ref name=MCreg /> a small computer manufacturing firm located in London. There, he implemented the language [[ALGOL 60]] and began developing major [[algorithm]]s.<ref name="Hoare81">{{cite journal |last=Hoare |first=C.A.R. |date=February 1981 |title=The emperor's old clothes |journal=[[Communications of the ACM]] |volume=24 |issue=2 |pages=5β83 |doi=10.1145/358549.358561 |issn=0001-0782|doi-access=free}}</ref><ref>{{Cite journal |doi=10.1145/358549.358561 |title=The emperor's old clothes |journal=Communications of the ACM |volume=24 |issue=2 |pages=75β83 |year=1981 |last=Hoare |first=C. A. R. |doi-access=free}}</ref> He was involved with developing [[international standard]]s in programming and informatics, as a member of the [[International Federation for Information Processing]] (IFIP) [[IFIP Working Group 2.1|Working Group 2.1]] on Algorithmic Languages and Calculi,<ref>{{cite web |url=https://ifipwg21wiki.cs.kuleuven.be/IFIP21/Profile |title=Profile of IFIP Working Group 2.1 |last1=Jeuring |first1=Johan |last2=Meertens |first2=Lambert |author2-link=Lambert Meertens |last3=Guttmann |first3=Walter |date=2016-08-17 |website=Foswiki |access-date=2020-10-07}}</ref> which [[Specification (technical standard)|specified]], maintains, and supports the languages ALGOL 60 and [[ALGOL 68]].<ref>{{Cite web |url=https://ifipwg21wiki.cs.kuleuven.be/IFIP21/ScopeEtc |title=ScopeEtc: IFIP21: Foswiki |last1=Swierstra |first1=Doaitse |last2=Gibbons |first2=Jeremy |author2-link=Jeremy Gibbons |last3=Meertens |first3=Lambert |author3-link=Lambert Meertens |date=2011-03-02 |website=Foswiki |access-date=2020-10-07}}</ref> He became the Professor of [[Computer science|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 became the first [[Christopher Strachey Professor of Computing]] on its establishment in 1988 until his retirement at Oxford in 2000.<ref name="cs-strachey-prof">{{cite web| url=https://www.cs.ox.ac.uk/news/1988-full.html | title=Christopher Strachey Professorship of Computing | publisher=[[Department of Computer Science, University of Oxford]] | date=5 November 2021 | accessdate=18 January 2024 }}</ref> He is now an [[Professor|Emeritus Professor]] there, and is also a principal researcher at [[Microsoft Research]] in [[Cambridge]], England.<ref>[https://web.archive.org/web/20081222161205/http://research.microsoft.com/en-us/people/thoare/ Microsoft home page] β short biography</ref><ref>[http://purl.umn.edu/107362 Oral history interview with C. A. R. Hoare] at [[Charles Babbage Institute]], University of Minnesota, Minneapolis.</ref><ref>{{doi-inline|10.1145/355620.361161|The classic article on monitors}} β The original article on monitors</ref> Hoare's most significant work has been in the following areas: his sorting and selection algorithm ([[Quicksort]] and [[Quickselect]]), [[Hoare logic]], the formal language [[communicating sequential processes]] (CSP) used to specify the interactions between [[concurrent process]]es (and implemented in various programming languages such as [[occam (programming language)|occam]]), structuring computer [[operating system]]s using the [[Monitor (synchronization)|monitor]] concept, and the [[axiom]]atic specification of [[programming language]]s.<ref>{{cite web |url=http://awards.acm.org/images/awards/140/articles/4622167.pdf |title=Preface to the ACM Turing Award lecture |archive-url=https://web.archive.org/web/20120419234212/http://awards.acm.org/images/awards/140/articles/4622167.pdf |archive-date=19 April 2012}}</ref><ref>{{cite web |url=https://amturing.acm.org/award_winners/hoare_4622167.cfm |title=C. Antony (Tony) R. Hoare |archive-url=https://archive.today/20120701153542/http://awards.acm.org/citation.cfm?id=4622167&srt=year&year=1980&aw=140&ao=AMTURING |archive-date=1 July 2012}}</ref> Speaking at a software conference in 2009, Tony Hoare hyperbolically apologized for inventing the [[null pointer|null reference]]:<ref>{{cite web |url=http://www.infoq.com/presentations/Null-References-The-Billion-Dollar-Mistake-Tony-Hoare |title=Null References: The Billion Dollar Mistake |publisher=InfoQ.com |date=25 August 2009 |first=Tony |last=Hoare}}</ref><ref>{{cite web |url=https://maximilianocontieri.com/null-the-billion-dollar-mistake |title=Null: The Billion Dollar Mistake |date=3 September 2020 |publisher=hashnode.com}}</ref> {{blockquote|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.<ref> {{cite web |url=http://qconlondon.com/london-2009/speaker/Tony+Hoare |url-status=live |archive-url=https://web.archive.org/web/20090628071208/http://qconlondon.com/london-2009/speaker/Tony+Hoare |archive-date=28 June 2009 |title=Null References: The Billion Dollar Mistake |type=Presentation abstract |last=Hoare |first=Tony |date=2009 |publisher=QCon London }}</ref>}} For many years under his leadership, Hoare's Oxford department worked on formal specification languages such as [[Communicating sequential processes|CSP]] and [[Z notation|Z]]. These did not achieve the expected take-up by industry, and in 1995 Hoare was led to reflect upon the original assumptions:<ref>{{cite conference |book-title=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 |title=Unification of Theories: A Challenge for Computing Science |publisher=Springer-Verlag |isbn=3-540-61629-2 |pages=49β57 |date=1996 |first=C. A. R. |last=Hoare}}</ref> {{blockquote|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.<ref> {{Cite newsletter |url=https://www.bcs.org/media/1wrosrpv/facs-jul24.pdf |url-status=live |access-date=10 July 2024 |archive-url=https://web.archive.org/web/20240710173846/https://www.bcs.org/media/1wrosrpv/facs-jul24.pdf |archive-date=10 July 2024 |title=Tony Hoare @ 90 |type=Magazine article |editor-first=Tim |editor-last=Denvir |editor-link=Tim Denvir |first1=He |last1=Jifeng |authorlink1=He Jifeng |first2=Cliff |last2=Jones |authorlink2=Cliff Jones (computer scientist) |first3=Bill |last3= Roscoe |authorlink3=Bill Roscoe |first4=Joe |last4=Stoy |authorlink4=Joe Stoy |first5=Bernard |last5=Sufrin |authorlink5=Bernard Sufrin |first6=Jonathan P. |last6=Bowen |authorlink6=Jonathan Bowen |issn=0950-1231 |date=2 July 2024 |pages=5-42 |magazine=[[FACS FACTS]] |publisher=Formal Aspects of Computing Science ([[BCS-FACS|FACS]]) Specialist Group }}</ref>
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Tony Hoare
(section)
Add topic