Practical Unix Programming:
A Guide to Concurrency, Communication, and Multithreading
by Kay. A. Robbins and Steven Robbins
Chapter 15:
Project: Tuple Space
Linda is an elegant programming language designed to
support parallel processing on networks of computers.
The language is built on simple primitives and a
tuple space model that uses shared data for communication
and synchronization, in contrast to traditional
message passing or shared memory approaches.
David Gelernter, Linda's originator, says in expressing
the philosophy
of Linda, ``Elegance in writing software is
achieving maximum functionality from minimal
complexity,.... It's the same as good prose --- getting
the most value from each word you write.''
This chapter develops a specification of a
simplified tuple space model
and illustrates its use by building a distributed
cooperative search application.
The project integrates most concepts covered in previous
chapters, culminating with a threaded remote procedure call server
for a Linda subset.
The machinery developed in this chapter is amazingly powerful,
building the foundation for a true
distributed operating system.
Next chapter
Back to chapter summaries