artifact
active
artifact:linda-in-context-1989Linda in Context (1989)
The source article that introduces and argues for the Linda parallel programming model, comparing it to message-passing, concurrent objects, logic programming, and functional programming.
Neighborhood — ranked by edge-count
Thinkers (9)
thinker
- G. A. RingwoodmentionsAuthor of the Parlog86 article in Communications of the ACM used as the main comparison point for concurrent logic programming.
- C. A. R. HoarementionsInventor of monitors and Communicating Sequential Processes (CSP).
- Gul AghamentionsAuthor of a comprehensive book on the Actors model.
- Ken MusgravementionsResearcher in Mandelbrot's group deploying Linda for ray-tracing fractal image generation.
- Marina C. ChenmentionsCreator of the Crystal parallel functional language, used as comparator for functional programming.
- Paul BercovitzmentionsBuilt the tuple space visualization tool at Yale; acknowledged in the paper.
- Jerrold LeichtermentionsSenior member of the Yale Linda group; co-author of distributed-data-structure and network performance paper.
- Robert BjornsonmentionsSenior member of the Yale Linda group.
- Venkatesh KrishnaswamymentionsSenior member of the Yale Linda group; co-author of Linda coprocessor paper.
Frameworks (6)
framework
- A major competing approach to parallel programming based on instantiating objects with embedded active processes and monitors for synchronization.
- Actors ModelcitesA message-passing concurrency model where processes (actors) communicate via messages (talks) and generate new processes; related to concurrent objects.
- CrystalcitesPure functional language with compiler-directed parallelism; Linda authors compare it on DNA sequence similarity computation.
- C-LindaintroducesThe C language embedding of Linda operations.
- Concurrent PrologcitesAn early concurrent logic programming language.
- Concurrency control using monitors with condition queues; compared to Linda's tuple space.
Methods (1)
method
- interpretive abstraction (method)introducesProgramming technique to restructure a fine-grained Linda program for efficiency by replacing live data structures with passive ones and coarser-grain processes.
Claims (17)
claim
- The central thesis of the paper, stated explicitly in the introduction.
- Explains a key consequence of generative communication.
- Critique that Parlog's abstraction level is too high and restrictive.
- Demonstrates flexibility advantage.
- Strong assertion that OOP does not inherently address parallelism.
- Illustrates how live data structures are simply expressed.
- Argument that recursion equations are inappropriate for many important parallel programs.
- Claims the uncoupled style is a key advantage.
- C-Linda code is easier to understand than the Parlog86 version [for the client-server problem].aboutSubjective but argued comparison.
- Linda unifies process creation and communication through generative communication.
- Contrasts with auto-parallelizing compilers; flexibility of Linda.
- Critique of the functional-level argument based on mental models.
- Comparison arguing that monitors restrict concurrent access and complicate distributed structures.
- Asserts that Linda's uncoupled style reduces cognitive load.
- Comment on the conceptual elegance of the model, used in conclusion.
- Assertion that the popular models add nothing to parallel programming.
- Argues the generality of the model beyond just parallel programming.
Concepts (9)
concept
- Linda (tuple space model)introducesA model of process creation and coordination based on generative communication and tuple spaces; the central topic of the paper.
- Nicholas CarrieroauthoredCo-author introducing Linda, a parallel programming model based on tuple spaces.
- Parlog86citesConcurrent logic language; Linda authors demonstrate simpler solutions to client-server and dining philosophers problems.
- David GelernterauthoredCo-author introducing Linda, a parallel programming model based on tuple spaces.
- Live Data StructuresintroducesA structuring technique where each element of a result is computed by a separate process that turns into a data element; enables fine-grained parallelism.
- EmeraldcitesState-of-the-art concurrent object system using monitors; Linda authors compare and critique its synchronous RPC-based communication.
- Uncoupled Programming StyleintroducesA programming paradigm where senders and receivers in Linda need not know anything about each other, reducing coupling in parallel programs.
- distributed data structuresintroducesData structures stored as collections of tuples in tuple space, accessible to many processes.
- Traditional parallel programming model where processes send directed messages to each other; contrasted with Linda's generative communication.
Artifacts (3)
artifact
- Debugging tool that displays tuple space state as quasi-physical spheres, built by Paul Bercovitz.
- Linda MachinementionsHardware prototype that supports tuple space operations directly.
- The actual Linda implementation from the Yale group, including C and Fortran versions, running on various parallel machines.
Questions (1)
question
- Opening question setting up the paper's purpose.
Communities (1)
community
- Generative Communicationintroduces