Concurrent programming for the masses (invited address)

This talk is concerned with the question: If hundreds of thousands of people are going to be writing distr ibuted programs, what sort of programs should they write? This question raises several questions in turn: Are hundreds of thousands of people going to be writing distr ibuted programs? If research scientists find it difficult to write correct distr ibuted programs (and they do find it difficult, as evidenced by published incorrect dis tr ibuted algorithms), wouldn' t it be bet ter to steer ordinary mortals away from distr ibuted programs? Will distr ibuted hardware be widely available? A different kind of question (but no less relevant) is: Why should you, the part ic ipants in the Principles of Distr ibuted

[1]  C. A. R. Hoare Programs are predicates , 1984, Philosophical Transactions of the Royal Society of London. Series A, Mathematical and Physical Sciences.

[2]  Stephen A. Cook,et al.  The Classifikation of Problems which have Fast Parallel Algorithms , 1983, FCT.

[3]  E. W. Dijkstra,et al.  Invariance and non-determinacy , 1984, Philosophical Transactions of the Royal Society of London. Series A, Mathematical and Physical Sciences.

[4]  K. Mani Chandy,et al.  The drinking philosophers problem , 1984, ACM Trans. Program. Lang. Syst..

[5]  John W. Backus,et al.  Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs , 1978, CACM.

[6]  Charles L. Seitz,et al.  The cosmic cube , 1985, CACM.

[7]  Daniel Lehmann,et al.  On the advantages of free choice: a symmetric and fully distributed solution to the dining philosophers problem , 1981, POPL '81.

[8]  R. Kowalski,et al.  The relation between logic programming and logic specification , 1984, Philosophical Transactions of the Royal Society of London. Series A, Mathematical and Physical Sciences.