Abstract
The simplicity and elegance of the Linda programming model is based on its single, global, typeless tuple space. However, these virtues come at a cost. First, the tuple space can be an impediment to scalable high performance. Second, the “black box” nature of the tuple space makes it an inherently dangerous data structure, prone to many types of programming errors.
Blossom is a C++ version of Linda with extensions. This paper introduces some of the novelties in Blossom, as they pertain to creating “safe” tuple spaces. These new features include multiple strongly typed tuple spaces, field access patterns, tuple space access patterns, and assertions.
Preview
Unable to display preview. Download preview PDF.
References
Bakken, D. E., and Schlichting, R. D. Supporting Fault-Tolerant Parallel Programming in Linda. IEEE Transactions on Parallel and Distributed Systems 6, 3 (1995), 287–302.
Bennett, J. K., Carter, J. B., and Zwaenepoel, W. Munin: Distributed Shared Memory Based on Type-Specific Memory Coherence. In Second ACM SIGPLAN Symposium on Principles & Practice of Parallel Programming (PPoPP) (1990), pp. 168–176.
Brown, T., Jeong, K., Li, B., Talla, S., Wyckoff, P., and Shasha, D.PLinda User Manual. http://merv.cs.nyu.edu:8001/-binli/plinda/manual.ps, 1997.
Butcher, P., Wood, A., and Atkins, M. Global Synchronisation in Linda. Concurrency: Practice and Experience 6, 6 (Sept. 1994), 505–516.
Callsen, C. J., Cheng, I., and Hagen, P. L. The AUC C++Linda System. In Linda-Like Systems and Their Implementation, G. Wilson, Ed. Tech. Rep., EPCC TR91-13, Edinburgh Parallel Computing Centre, June 1991, ch. 4, pp. 39–73.
Carreira, J., Silva, L., and Silva, J. G. On the design of Eileen: a Linda-like library for MPI. In Proceedings of the 1994 Scalable Parallel Libraries Conference (1995), pp. 175–184.
Carriero, N., and Gelernter, D.How To Write Parallel Programs: A First Course. MIT Press, Cambridge, MA, 1990.
Carriero, N., and Gelernter, D.Tuple Analysis and Partial Evaluation Strategies in the Linda Precompiler. Research Monographs in Parallel and Distributed Computing. Pitman, London, 1990, ch. 7, pp. 114–125.
Ciancarini, P., and Rossi, D. Jada: Coordination and Communication for Java agents. In Mobile Object Systems: Towards the Programmable Internet, J. Vitek and C. Tschudin, Eds., vol. 1222 of Lecture Notes in Computer Science. Springer Verlag, 1997, pp. 213–228.
Gamma, E., Helm, R., Johnson, R., and Vlissides, J.Design Patterns. Addison-Wesley, 1995.
Gelernter, D. Multiple Tuple Spaces in Linda. In Proceedings PARLE'89: Parallel Architectures and Languages Europe (June 1989), pp. 20–27.
Halstead, A. MultiLisp: A Language for Concurrent Symbolic Computation. ACM Transactions on Programming Languages and Systems 7, 4 (1985), 501–538.
Jellinghaus, R. Eiffel Linda: An Object-Oriented Linda Dialect. ACM SIGPLAN Notices 25, 12 (Dec. 1990), 70–84.
Kielmann, T. Designing a Coordination Model for Open Systems. In Coordination Languages and Models, First International Conference COORDINATION '96 (1996), P. Ciancarini and C. Hankin, Eds., pp. 267–284.
Matsuoka, S., and Kawai, S. Using Tuple-Space Communication in Distributed Object-Oriented Architectures. Proceedings ACM Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA) 23,11 (1988), 276–284.
Rowstron, A., and Wood, A. Solving the Linda Multiple rd Problem. In Coordination Languages and Models, First International Conference COORDINATION '96 (1996), P. Ciancarini and C. Hankin, Eds., pp. 357–367.
Szafron, D., and Schaeffer, J. An Experiment to Measure the Usability of Parallel Programming Systems. Concurrency: Practice and Experience 8, 2 (1996), 147–166.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
van der Goot, R., Schaeffer, J., Wilson, G.V. (1997). Safer tuple spaces. In: Garlan, D., Le Métayer, D. (eds) Coordination Languages and Models. COORDINATION 1997. Lecture Notes in Computer Science, vol 1282. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-63383-9_87
Download citation
DOI: https://doi.org/10.1007/3-540-63383-9_87
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-63383-9
Online ISBN: 978-3-540-69527-1
eBook Packages: Springer Book Archive