Sir Tony Hoare has died
216 points
2 hours ago
| 19 comments
| lefenetrou.blogspot.com
| HN
fidotron
1 hour ago
[-]
The confusion is possibly almost appropriate, given so much of his work was on creating systems which avoid confusion through using proper synchronized communication channels. The null pointer stuff is famous, but it's occam and the Communicating Sequential Processes work that were brilliant. Maybe it's also brilliantly wrong, as I think Actor model people could argue, but it is brilliant.

My favourite quote of his is “There are two ways of constructing a piece of software: One is to make it so simple that there are obviously no errors, and the other is to make it so complicated that there are no obvious errors.”

While we hope it's not true, if it is a very deserved RIP.

reply
nextos
1 hour ago
[-]
CSP and Hoare logic were brilliant. He was a huge proponent of formal methods.

He famously gave up on making formal methods mainstream, but I believe there will be a comeback quite soon.

On generated code, verification is the bottleneck. He was right, just too early.

reply
eru
51 minutes ago
[-]
Actor model would also be brilliantly wrong: it doesn't compose smaller correct systems into larger correct systems.

(Software) Transactional Memory and other ideas inspired by databases have a much better shot at this.

reply
jacquesm
55 minutes ago
[-]
And here we are throwing all that brilliance away with Async abominations. Software can be so simple and elegant.
reply
zacklee-aud
35 minutes ago
[-]
Most discussions here focus on quicksort and the null reference mistake, but his work on communicating sequential processes (CSP) laid the theoretical foundation for modern concurrent and distributed system design. Hoare logic also created the baseline for all formal verification work that's only now starting to see widespread production use, decades after he first published it. Few computer scientists have contributed work that impacts day-to-day coding, algorithm design, and core system architecture at this fundamental a level.
reply
tombert
1 hour ago
[-]
Damn.

Tony Hoare was on my bucket list of people I wanted to meet before I or they die. My grad school advisor always talked of him extremely highly, and while I cannot seem to confirm it, I believe Hoare might have been his PhD advisor.

It's hard to overstate how important Hoare was. CSP and Hoare Logic and UTP are all basically entire fields in their own right. It makes me sad he's gone.

reply
jballanc
34 minutes ago
[-]
You can always check his entry on the Mathematics Genealogy Project: https://mathgenealogy.org/id.php?id=45760
reply
dboreham
45 minutes ago
[-]
When I met him unfortunately I didn't realize how important he was (1987). The place where I worked used formal methods to verify the design of an FPU, in collaboration with the PRG. iirc the project was a success. I never heard of formal methods being successfully used again until TLA+ a few years ago.
reply
EdNutting
25 minutes ago
[-]
Inmos’ Occam-based verification of their FPU in collaboration with researchers at Bristol and Oxford iirc? Citation: http://people.cs.bris.ac.uk/~dave/formalmethods.pdf

David May was my PhD supervisor and always spoke very highly of Sir Tony Hoare.

Edit: I’m also lucky enough to have worked with Geoff Barrett, the guy that completed that formal verification (and went on to do numerous other interesting things). Some people may be interested to learn that this work was the very first formal verification of an FPU - and the famous Intel FPU bug could have been avoided had Intel been using the verification methods that the Inmos and University teams pioneered.

reply
fanf2
27 minutes ago
[-]
Inmos? Transputers were inspired by Hoare’s CSP.
reply
EdNutting
14 minutes ago
[-]
“Inspired by” is an understatement of the century lol. David May and Sir Tony worked very closely together to enable the architecture to be as pure a runtime for CSP as you could get - at least in early versions of the architecture and accompanying Occam language. It expanded and deviated a bit later on iirc.

Source: David loved to tell some of these stories to us as students at Bristol.

reply
EdNutting
11 minutes ago
[-]
It’s also worth highlighting that the mathematical purity of the designs were also partly the problem with them. As a field, we’re still developing the maths of Effects and Effectful Algebras that are needed to make these systems both mathematically ‘pure’ (or at least sound to within some boundary) and ALSO capable of interfacing to the real world.

Transputer and Occam were, in this sense, too early. A rebuild now combining more recent developments from Effect Algebras would be very interesting technically. (Commercially there are all sorts of barriers).

reply
csb6
1 hour ago
[-]
Sad that his (and many others') dream of widespread formal verification of software never came true. He made really fundamental contributions to computer science but will probably be mostly known for quicksort and the quote about his "billion dollar mistake", not his decades-long program to make formal methods more tractable.

Makes me think of an anecdote where Dijkstra said that he feared he would only be remembered for his shortest path algorithm.

reply
hinkley
53 minutes ago
[-]
Almost all of the earliest cited works on concurrency management in software were authored by C A R 'Tony' Hoare.

I genuinely forget he authored quicksort on the regular.

reply
yodsanklai
34 minutes ago
[-]
Actually, thanks to AI, this may change soon! we may be in a place where widespread formal verification is finally possible.
reply
susam
38 minutes ago
[-]
I first came across Tony Hoare about 24 years ago while learning C from The C Programming Language by Kernighan and Richie. I knew him only as C. A. R. Hoare for a long time. When I got on the Internet, it took me a while to realise that when people said Tony Hoare, it was the same person I knew as C. A. R. Hoare. Quoting the relevant text from the book:

> Another good example of recursion is quicksort, a sorting algorithm developed by C.A.R. Hoare in 1962. Given an array, one element is chosen and the others partitioned in two subsets - those less than the partition element and those greater than or equal to it. The same process is then applied recursively to the two subsets. When a subset has fewer than two elements, it doesn't need any sorting; this stops the recursion.

> Our version of quicksort is not the fastest possible, but it's one of the simplest. We use the middle element of each subarray for partitioning. [...]

It was one of the first few 'serious' algorithms I learnt to implement on my own. More generally, the book had a profound impact on my life. It made me fall in love with computer programming and ultimately choose it as my career. Thanks to K&R, Tony Hoare and the many other giants on whose shoulders I stand.

reply
arn3n
1 hour ago
[-]
Pardon if I’m dumb/missed something: Is Tony Hoare dead? I see no news anywhere.
reply
Jtsummers
1 hour ago
[-]
I can't find any news either, but that is the claim of this submission.

  > Jonathan Bowen informed me of Tony Hoare's death on Thursday, March 5th. (translated from French)
The main reason to find it surprising is that it's now 4 days since then, I'd have expected something to have been published besides this page.
reply
intuitionist
50 minutes ago
[-]
Sadly it seems to be true. Heard it late last week from a coworker in a position to know.
reply
hinkley
1 hour ago
[-]
His Wikipedia page is still worded in the present tense. People tend to be johnny on the spot about that so maybe not?
reply
csb6
1 hour ago
[-]
The blog author says that Jonathan Bowen informed them, so it is possible it hasn't been officially announced.
reply
tibbar
1 hour ago
[-]
That is the claim of the post. I also don't see confirmation elsewhere
reply
nextos
1 hour ago
[-]
There is very little information around, this is the most authoritative post I could find. There are some comments on X as well.

According to this blogpost, he sadly passed away last Thursday, March 5th.

reply
jlhawn
1 hour ago
[-]
There were a few recent edits about this on Tony Hoar's Wikipedia page which were reverted because there was no substantial evidence: https://en.wikipedia.org/w/index.php?title=Tony_Hoare&action...
reply
nextos
1 hour ago
[-]
It was edited again a few minutes ago and now displays Sunday, March 8th as his date of death.
reply
codethief
1 hour ago
[-]
And it's gone again!
reply
spooneybarger
1 hour ago
[-]
Yes. He died last week.
reply
behehebd
1 hour ago
[-]
Any link to information?
reply
spooneybarger
1 hour ago
[-]
Came through personal contact who is close to the family.
reply
rvz
1 hour ago
[-]
RIP Tony Hoare.

Legendary Turing Award Winner.

reply
hinkley
1 hour ago
[-]
One of Billy Crystal's later standup bits was talking about how his parents have hit an age where their favorite game with their friends is called, "Guess Who Died". I've been thinking about that bit an awful lot the last couple of years.
reply
EdNutting
7 minutes ago
[-]
This post appears to have been hidden from the front page of HN?
reply
laurieg
39 minutes ago
[-]
I saw a casual lecture given by Tony Hoare as a teenager. The atmosphere was warm and welcoming, even if I didn't fully understand all of the content. I remember he was very kind and answered my simple questions politely.
reply
mynegation
48 minutes ago
[-]
Sir Tony Hoare visited Institute for System Programming in Moscow and gave a lecture quarter of the century ago. It was unforgettable experience to see the living legend of your field. He was a senior person then already and today I am going to celebrate his long and wonderful life.
reply
riazrizvi
1 hour ago
[-]
"The null reference was my billion dollar mistake responsible for innumerable errors, vulnerabilities and system crashes" (paraphrasing). I don't know. This design choice exposed the developer to system realities, and modern language approaches are based on decades of attempts to improve on it, and they are not necessarily better. Safer yes, but more weighty.

Can anyone suggest a better approach for a situation like this in the future? What's better than exposing addressing the problem with a light solution?

reply
magarnicle
59 minutes ago
[-]
"The problem isn't the concept of 'null', but rather that everything can be null, which makes it impossible to distinguish between the cases where null is an appropriate and expected value, from the cases where null is a defect."

https://blog.ploeh.dk/2015/04/13/less-is-more-language-featu...

reply
cyberax
1 hour ago
[-]
Some kind of an optional/variant type, enforced by the type system.
reply
p1necone
1 hour ago
[-]
Or if even that feels too verbose, just a 'nullable' modifier on the variable or field definition, with the default being not nullable.

(Although Optional/Maybe types are definitely my preference based on the languages I've used)

reply
ontouchstart
1 hour ago
[-]
reply
pyuser583
1 hour ago
[-]
Wikipedia is reporting him as deceased, but there’s a bit of an editing war going on. No source is cited for his death, and and it’s going back and forth.
reply
reenorap
1 hour ago
[-]
Once verified, I definitely think the creator of Quicksort deserves a black bar.
reply
hinkley
1 hour ago
[-]
Tony Hoare documented almost every form of concurrency primitive that we have in modern software. Pretty much everything prior to Rust's ownership semantics was written down in some form or under another name by Tony in the early 1970's.
reply
jacquesm
53 minutes ago
[-]
It goes a lot further than Quicksort.
reply
jonstewart
1 hour ago
[-]
Yes, make it black.
reply
muyuu
1 hour ago
[-]
always knew him as C.A.R. Hoare, takes me way back to freshman college years

RIP good sir

reply
butterisgood
1 hour ago
[-]
Wikipedia seems to say he passed yesterday.
reply
wging
1 hour ago
[-]
But there are no citations on any of the edits claiming this, and there were two incompatible dates claimed (March 5, March 8).
reply
hinkley
1 hour ago
[-]
At this exact moment it looks like those edits may have been reverted.
reply
briane80
1 hour ago
[-]
He was a professor at my old alma mater, Queen's University of Belfast. I remember hearing a story about him going to Harvard to give a lecture and, as he was presented, one of their professors referred to himself as the "Hoare of Harvard"
reply
bitwize
1 hour ago
[-]
Time for a black band.
reply
hinkley
1 hour ago
[-]
@dang is there such a thing as a double black bar? Because we need one for Tony.
reply
toomuchtodo
1 hour ago
[-]
Tags do nothing, email the mods if desired. Bottom bar has deets (“contact”).
reply
godd2
33 minutes ago
[-]
What is a black bar?
reply
john_strinlai
30 minutes ago
[-]
when a significant figure in the tech/science community dies, hn will sometimes place a thin black bar at the top of the page in memoriam
reply