Top
Best
New

Posted by speckx 7 hours ago

Tony Hoare has died(blog.computationalcomplexity.org)
1152 points | 156 commentspage 3
robot 4 hours ago|
"Communicating Sequential Processes" by Tony Hoare: https://www.cs.cmu.edu/~crary/819-f09/Hoare78.pdf

It had intrigued me due to its promise of designing lock-free concurrent systems, that can (I think) also be proven to be deadlock-free.

You do this by building a simple concurrent block that is proven to work correctly, and then build bigger ones using the smaller, proven blocks, to create more complex systems.

The way it is designed is processes don't share data and don't have locks. They use synchronized IPC for passing and modifying data. It seemed to be a foundational piece for designing reliable systems that incorporate concurrency in them.

robot 9 minutes ago|
BTW Rob Pike designed the Go language channels inspired by this work: https://go.dev/tour/concurrency/2
john_strinlai 7 hours ago||
https://news.ycombinator.com/item?id=47316880

249 points by nextos 16 hours ago | 61 comments

dang 3 hours ago|
Thanks! We'll merge those comments hither.
Insanity 6 hours ago||
RIP.

His presentation on his billion dollar mistake is something I still regularly share as a fervent believer that using null is an anti-pattern in _most_ cases. https://www.infoq.com/presentations/Null-References-The-Bill...

That said, his contributions greatly outweigh this 'mistake'.

fooker 5 hours ago||
Anti patterns are great, they act as escape hatches or pressure release valves. Every piece of mechanical equipment has some analogue for good reason.

Without things like null pointers, goto, globals, unsafe modes in modern safe(r) languages you can get yourself into a corner by over designing everything, often leading to complex unmaintainable code.

With judicious use of these anti-patterns you get mostly good/clean design with one or two well documented exceptions.

tialaramex 4 hours ago|||
The "goto" in languages like C or C++ is de-fanged and not at all similar to the sequence break jump in "Go To Statement Considered Harmful". That doesn't make it a good idea, but in practice today the only place you'll see the unstructured feature complained of is machine code/ assembly language.

You just don't need it but it isn't there as some sort of "escape hatch" it's more out of stubbornness. Languages which don't have it are fine, arguably easier to understand by embracing structure more. I happen to like Rust's "break 'label value" but there are plenty of ways to solve even the trickier parts of this problem (and of course most languages aren't expression based and wouldn't need a value there).

Insanity 4 hours ago|||
That relies on a programmer doing the right thing and knowing when to use the escape valve. From the codebases I've seen, I don't trust humans in doing the right thing and being judicious with this. But it's a good point, knowing when to deviate from a pattern is a strong plus.
fooker 4 hours ago||
That's why code reviews exist, it's good process to make code reviews mandatory.
mrkeen 3 hours ago||
It's too much of a stretch to call null an escape hatch, or to pretend that code reviews will somehow strip it out.

The OpenJDK HashMap returns null from get(), put() and remove(), among others. Is this just because it hasn't been reviewed enough yet?

fooker 3 hours ago||
> pretend that code reviews will somehow strip it out.

Code reviews 'somehow' strip out poorly thought out new uses of escape hatches.

For your example, it would be an use of get, put or remove without checking the result.

bazoom42 3 hours ago||
You misunderstand the “billion dollar mistake”. The mistake is not the use of nulls per se, the mistake is type-systems which does not make them explicit.
madsohm 6 hours ago||
I wrote both my master thesis and PhD on Hoare's Communicating Sequential Processes. I really enjoyed it's simplicity, expandability, and was always amazed that it inspired and influenced language constructs in Go, Erlang, occam and the likes.
semessier 14 hours ago||
unless its greatly exagerated - he was quite mind sharp in his 80s

SIR_TONY_HOARE = μX • (think → create → give → X)

-- process ran from 1934 to 2026 -- terminated with SKIP -- no deadlock detected -- all assertions satisfied -- trace: ⟨ quicksort, hoare_logic, csp, monitors, -- dining_philosophers, knighthood, turing_award, -- billion_dollar_apology, structured_programming, -- unifying_theories, ... ⟩ -- trace length: ∞ The channel is closed. The process has terminated. The algebra endures.

smj-edison 4 hours ago||
From the article:

> On the topic of films, I wanted to follow up with Tony a quote that I have seen online attributed to him about Hollywood portrayal of geniuses, often especially in relation to Good Will Hunting. A typical example is: "Hollywood's idea of genius is Good Will Hunting: someone who can solve any problem instantly. In reality, geniuses struggle with a single problem for years". Tony agreed with the idea that cinema often misrepresents how ability in abstract fields such as mathematics is learned over countless hours of thought, rather than - as the movies like to make out - imparted, unexplained, to people of 'genius'. However, he was unsure where exactly he had said this or how/why it had gotten onto the internet, and he agreed that online quotes on the subject, attributed to him, may well be erroneous.

Somewhat off-topic, but it's cool hearing this from someone who's contributed so much to the fields of programming and mathematics. It makes me hopeful that my own strugglings with math will pay out over time!

tosh 5 hours ago||
Tony Hoare on how he came up with Quicksort:

he read the algol 60 report (Naur, McCarthy, Perlis, …)

and that described "recursion"

=> aaah!

https://www.youtube.com/watch?v=pJgKYn0lcno

laurieg 22 hours 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.
ontouchstart 23 hours ago||
RIP: https://youtu.be/tAl6wzDTrJA
ontouchstart 5 hours ago|
I watched this video a few months ago.

Virtual HLF 2020 – Scientific Dialogue: Sir C. Antony R. Hoare/Leslie Lamport

https://www.youtube.com/watch?v=wQbFkAkThGk

More comments...