Juliusz Chroboczek  <jch@pps.jussieu.fr> wrote:
+---------------
| GP lisper <spambait@CloudDancer.com>:
| > Generally people find that threads are a nice idea for someone else.
| 
| As Barbie famously said, programming is hard.  Programming batch
| programs is hard enough, but we haven't got the least idea about how
| to go about programming concurrent systems.
| 
| Threads are the best we've got for programming concurrent systems.
| The problem is not with threads -- it's about concurrency itself.
+---------------
This is not entirely correct. A *few* rigorous steps have been taken,
going back as far 1976, e.g.:
    http://www.cs.utexas.edu/users/EWD/ewd05xx/EWD554.PDF
    EWD 554 "A personal summary of the Gries-Owicki Theory" (March 1976)
    [Published in Edsger W. Dijkstra, "Selected Writings on Computing:
    A Personal Perspective", Springer-Verlag, 1982. ISBN 0 387 90652 5.]
-Rob
p.s. Reading this might be a bit difficult if one has never seen
the Dijkstra/Gries "guarded command language" notation:
    Edsger W. Dijkstra: "Guarded Commands, Nondeterminacy and Formal
    Derivation of Programs", Comm. ACM 18(8): 453-457 (1975)
An earlier version (June 1974) is archived at:
    http://www.cs.utexas.edu/users/EWD/ewd04xx/EWD418.PDF
    EWD 418: "Guarded commands, non-determinacy and a calculus
    for the derivation of programs".
-----
Rob Warnock			<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607