Abstract
A new framework is presented, based on the notion of a partially ordered multiset (or pomset), which is able to provide not only a precise operational semantics of parallel functional program evaluation, but also a handle through which to control such behavior. As an operational semantics, pomsets are able to distinguish between call-by-value, call-by-name, call-by-need, and call-by-speculation evaluation strategies (even though all but the first of these have the same standard semantics); and as a “handle” from which to control operational behavior, pomsets can express most of the behaviors achieved by previously proposed annotations that control not only evaluation order but also the spatial mapping of program to machine.
This research was supported in part by grants from the National Science Foundation (DCR-8451415) and the Department of Energy (FG02-86ER25012).
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
F.W. Burton. Annotations to control parallelism and reduction order in the distributed evaluation of functional programs. ACM Trans. on Prog. Lang. and Sys., 6(2), April 1984.
B. Goldberg. Detecting sharing of partial applications in functional programs. In Proceedings of 1987 Functional Programming Languages and Computer Architecture Conference, page to appear, Springer Verlag LNCS ..., September 1987.
B. Goldberg. Multiprocessor Execution of Functional Programs. PhD thesis, Yale University, Department of Computer Science, expected Spring 1987.
P. Hudak. Denotational semantics of a para-functional programming language. Int'l Journal of Parallel Programming, 15(2):103–125, 1986.
P. Hudak. Para-functional programming. Computer, 19(8):60–71, August 1986.
P. Hudak and B. Goldberg. Distributed execution of functional programs using serial combinators. In Proceedings of 1985 Int'l Conf. on Parallel Proc., pages 831–839, August 1985. Also appeared in IEEE Trans. on Computers, Vol C-34, No. 10, October 1985, pages 881–891.
P. Hudak and B. Goldberg. Serial combinators: “optimal” grains of parallelism. In Functional Programming Languages and Computer Architecture, pages 382–388, Springer-Verlag LNCS 201, September 1985.
P. Hudak and L. Smith. Para-functional programming: a paradigm for programming multiprocessor systems. In 12th ACM Sym. on Prin. of Prog. Lang., pages 243–254, January 1986.
P. Hudak and J. Young. Higher-order strictness analysis for untyped lambda calculus. In 12th ACM Sym. on Prin. of Prog. Lang., pages 97–109, January 1986.
R.J.M. Hughes. Super-combinators: a new implementation method for applicative languages. In Proc. 1982 ACM Conf. on LISP and Functional Prog., pages 1–10, ACM, August 1982.
R.M. Keller and F.C.H. Lin. Simulated performance of a reduction-based multiprocessor. IEEE Computer, 17(7):70–82, July 1984.
R.M. Keller and G. Lindstrom. Approaching distributed database implementations through functional programming concepts. In Int'l Conf. on Distributed Systems, May 1985.
V. Pratt. Modeling concurrency with partial orders. Int'l Journal of Parallel Programming, 15(1):33–72, February 1986.
N.S. Sridharan. Semi-applicative programming: an example. Technical Report, BBN Laboratories, November 1985.
P.C. Treleaven, D.R. Brownbridge, and R.P. Hopkins. Data-driven and demand-driven computer architectures. Computing Surveys, 14(1):93–143, March 1982.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1987 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hudak, P., Anderson, S. (1987). Pomset interpretations of parallel functional programs. In: Kahn, G. (eds) Functional Programming Languages and Computer Architecture. FPCA 1987. Lecture Notes in Computer Science, vol 274. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-18317-5_14
Download citation
DOI: https://doi.org/10.1007/3-540-18317-5_14
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-18317-4
Online ISBN: 978-3-540-47879-9
eBook Packages: Springer Book Archive