Abstract
The expense of developing and maintaining software is the major obstacle to the routine use of parallel computation. Architecture independent programming offers a way of avoiding the problem, but the requirements for a model of parallel computation that will permit it are demanding. The Bird-Meertens formalism is an approach to developing and executing data-parallel programs; it encourages software development by equational transformation; it can be implemented efficiently across a wide range of architecture families; and it can be equipped with a realistic cost calculus, so that trade-offs in software design can be explored before implementation. It makes an ideal model of parallel computation.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
S. Ahuja, N. Carriero, D. Gelernter, and V. Krishnswamy. Matching languages and hardware for parallel computation in the Linda machine. IEEE Transactions on Computers, 37, No.8:921–929, August 1988.
C. Banger. Arrays with categorical type constructors. In ATABLE’92 Proceedings of a Workshop and Arrays, June 1992.
R.S. Bird. A calculus of functions for program derivation. Oxford University Programming Research Group Monograph PRG-64, 1987.
R.S. Bird. An introduction to the theory of lists. In M. Broy, editor, Logic of Programming and Calculi of Discrete Design, pages 3–42. Springer-Verlag, 1987.
R.S. Bird. Lectures on constructive functional programming. Oxford University Programming Research Group Monograph PRG-69, 1988.
R.S. Bird. Algebraic identities for program calculation. The Computer Journal, 32(2):122–126, February 1989.
R.S. Bird, J. Gibbons, and G. Jones. Formal derivation of a pattern matching algorithm. Science of Computer Programming, 12:93–104, 1989.
G. Blelloch. Scans as primitive parallel operations. In Proceedings of the International Conference on Parallel Processing, pages 355–362, August 1987.
G.E. Blelloch. Vector Models for Data-Parallel Computing. MIT Press, 1990.
R.P. Brent. The parallel evaluation of general arithmetic expressions. Journal of the ACM, 21, No.2:201–206, April 1974.
W. Cai and D.B. Skillicorn. Evaluation of a set of message-passing routines in transputer networks. In A.R. Allen, editor, Proceedings of the WoTUG 92 World Transputer Users Group, “Transputer Systems — Ongoing Research”, pages 24–36. IOS Press, April 1992.
Nicholas Carriero. Implementation of tuple space machines. Technical report, Dept. of Computer Science, Yale University, December 1987. Research Report YALEU/DCS/RR-567.
Nicholas Carriero and David Gelernter. Application experience with Linda. In ACM/SIGPLAN Symposium on Parallel Programming, July 1988.
M. Cole. Algorithmic Skeletons: Structured Management of Parallel Computation. Research Monographs in Parallel and Distributed Computing. Pitman, 1989.
M. Danelutto, R. Di Meglio, S. Pelagatti, and M. Vanneschi. High level language constructs for massively parallel computing. Technical report, Hewlett Packard Pisa Science Center, HPL-PSC-90-19, 1990.
M. Danelutto, S. Pelagatti, and M. Vanneschi. High level languages for easy massively parallel computing. Technical report, Hewlett Packard Pisa Science Center, HPL-PSC-91-16, 1991.
D. Gelernter. Generative communication in Linda. ACM Transactions on Programming Languages and Systems, 7(1):80–112, 1985.
J. Gibbons. Algebras for Tree Algorithms. PhD thesis, D.Phil, thesis, Programming Research Group, University of Oxford, 1991.
D. le Metayer. Mechanical analysis of program complexity. Proceedings of the SIGPLAN ′85 Symposium, pages 69–73, July 1985.
G. Malcolm. Algebraic Data Types and Program Transformation. PhD thesis, Rijksuniversiteit Groningen, September 1990.
K. Mehlhorn and U. Vishkin. Randomized and deterministic simulation of PRAMs by parallel machines with restricted granularity of parallel memories. Acta Informatica, 21:339–374, 1984.
S. Peyton-Jones. Implementation of Functional Programming Languages. Prentice-Hall, 1987.
A. G. Ranade. Fluent Parallel Computation. PhD thesis, Yale University, 1989.
G. Sabot. The Paralation Model: Architecture-Independent Parallel Programming. MIT Press, 1989.
D. Sands. Calculi for Time Analysis of Functional Programs. PhD thesis, Imperial College, September 1990.
D. Sands. Complexity analysis for a lazy higher-order language. In Proceedings of the Third European Symposium on Programming, number 432 in LNCS. Springer-Verlag, May 1990.
D.B. Skillicorn. Models for practical parallel computation. International Journal of Parallel Programming, 20(2):133–158, April 1991. Actually appeared in 1992.
D.B. Skillicorn and W. Cai. A cost calculus for parallel functional programming, submitted 1992. Also appears as Department of Computer Science Technical Report 92–329.
J.M. Spivey. A categorical approach to the theory of lists. In Mathematics of Program Construction, pages 399–408. Springer-Verlag Lecture Notes in Computer Science 375, June 1989.
L.G. Valiant. Optimally universal parallel computers. Phil Trans. Royal Society Lond. Series A, 326:373–376, 1988.
L.G. Valiant. A bridging model for parallel computation. Communications of the ACM, 33(8):103–111, August 1990.
L.G. Valiant. General purpose parallel architectures. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, Vol. A. Elsevier Science Publishers and MIT Press, 1990.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1993 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Skillicorn, D.B. (1993). The Bird-Meertens Formalism as a Parallel Model. In: Kowalik, J.S., Grandinetti, L. (eds) Software for Parallel Computation. NATO ASI Series, vol 106. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-58049-9_9
Download citation
DOI: https://doi.org/10.1007/978-3-642-58049-9_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-63453-6
Online ISBN: 978-3-642-58049-9
eBook Packages: Springer Book Archive