Re:Pony is an open-source, actor-model, high performance pro...
by betenoire on Thursday January 14, 2016 @02:02PM
(#10903539)
There are many ways code can grind and thrash to a halt, like your code shows. But a deadlock refers specifically to the idea of two processes waiting until the other is done before they proceed. It's a scheduling problem, and a lock is used for synchronization. If there are no locks (spinlocks, semaphores, etc), there are no deadlocks by name (just other problems).
[ Parent
| on HN ]
Re:Pony is an open-source, actor-model, high performance pro...
by ggchappell on Thursday January 14, 2016 @02:12PM
(#10903618)
> ... there are no deadlocks by name (just other problems).
Okay, supposing we have a definition of deadlock that agrees with your usage: sure. But then these "other problems" you mention will have exactly the same practical effect as deadlock, right? A program will hang, sometimes unpredictably, based on more or less random decisions made by some low-level scheduling algorithm.
And in that case, Pony's guarantee of no deadlock is (1) completely correct, and (2) completely meaningless, from the point of view of a programmer whose concern is that his code will behave as required.
Am I wrong? EDIT. Maybe: https://news.ycombinator.com/item?id=10903876