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.
(btw the "confusion" here was confusion about whether he had actually died. this comment was originally posted to https://news.ycombinator.com/item?id=47316880, which was the thread we merged hither)
Locks are even more prevalent today. And so was leaded gasoline.
(To be less snarky, locks are one way you can implement both actor model and Transactional Memory. But just like JMP instructions in your CPU, it's probably better to provide programmers with a higher level of abstraction.)
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.