News for hackers. Stuff that matters.
Re:Why Rust? [pdf] by pcwalton on Wednesday September 09, 2015 @02:34PM (#10193254)
> Eliminating deadlocks in general isn't possible in a Turing-complete language.

It is possible. For example, you could just remove threads and synchronization primitives. :)

But it's not easy -- IMO, compared to data races it's much harder to eliminate deadlocks statically without restricting expressiveness too much. It's even harder if you count I/O related deadlocks as deadlocks (e.g. deadlocking reads on Unix pipes).

Re:Why Rust? [pdf] by kibwen on Wednesday September 09, 2015 @03:05PM (#10193500)
Bah, I should have been more precise with my terminology. :P I tend to consider an infinite loop a form of deadlock, even if it only involves a single unit of execution.