AI-powered
podcast player
Listen to all your favourite podcasts with AI-powered features
How to Write Concurrency Algorithms
The Bakery algorithm is a nice simple algorithm and you can, you know, reason about it that way. But because there was no way developed for reasoning about program, but concurrency algorithms, I had to be really careful to make it rigorous. And so I didn't make any assumptions about atomic actions that happen atomically. Two actions can happen at the same time. So my reasoning method allowed that possibility. And that's why I was able to discover that it had that property. Nowadays, we write specifications, like think of it as pseudo code in a way, where we assume that reads and writes are separate actions. They can't happen at the Same Time (RSE)