ACM Home Page
Please provide us with feedback. Feedback
An operational semantics for parallel lazy evaluation
Full text PdfPdf (313 KB)
Source International Conference on Functional Programming archive
Proceedings of the fifth ACM SIGPLAN international conference on Functional programming table of contents
Pages: 162 - 173  
Year of Publication: 2000
ISBN:1-58113-202-6
Also published in ...
Authors
Clem Baker-Finch  University of Canberra, ACT, Australia
David J. King  Motorola Labs, Basingstoke, England
Phil Trinder  Heriot-Watt University, Edinburgh, Scotland
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 3,   Downloads (12 Months): 23,   Citation Count: 4
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues   peer to peer  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/351240.351256
What is a DOI?

ABSTRACT

We present an operational semantics for parallel lazy evaluation that accurately models the parallel behaviour of the non-strict parallel functional language GpH. Parallelism is modelled synchronously, that is, single reductions are carried out separately then combined before proceeding to the next set of reductions. Consequently the semantics has two levels, with transition rules for individual threads at one level and combining rules at the other. Each parallel thread is modelled by a binding labelled with an indication of its activity status. To the best of our knowledge this is the first semantics that models such thread states. A set of labelled bindings corresponds to a heap and is used to model sharing.The semantics is set at a higher level of abstraction than an abstract machine and is therefore more manageable for proofs about programs rather than implementations. At the same time, it is sufficiently low level to allow us to reason about programs in terms of parallelism (i.e. the number of processors used) as well as work and run-time with different numbers of processors.The framework used by the semantics is sufficiently flexible and general that it can easily be adapted to express other evaluation models such as sequential call-by-need, speculative evaluation, non-deterministic choice and others.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
S. Aditya, Arvind, L. Augustsson, J.-W. Maessen, and R. S. Nikhil. Semantics of pH: A parallel dialect of Haskell. In Proceedings of the Haskell Workshop, pages 35-49, La Jolla, California, 1995.
3
 
4
 
5
C. Baker-Finch, D. J. King, J. G. Hall, and P. Trinder. An operational semantics for parallel call-by-need. Technical Report No. 99/1, Department of Computing, The Open University, Milton Keynes, 1999.
6
7
8
 
9
 
10
S. Breitinger, R. Loogen, Y. Ortega-Mallen, and R. Pena. Eden: Language Definition and Operational Semantics. Fachbereich Mathematik und Informatik, Philipps Universit. at Marburg, 1998. Technical Report 96-10.
 
11
 
12
13
 
14
J. Greiner. Semantics-based parallel cost models and their use in provably efficient implementations. PhD thesis, School of Computer Science, Carnegie Mellon University, Pittsburgh, 1997.
15
 
16
J. Gustavsson and D. Sands. A foundation for space-safe transformations of call-by-need programs. In The Third International Workshop on Higher Order Operational Techniques in Semantics, volume 26 of Electronic Notes in Theoretical Computer Science. Elsevier, 1999.
 
17
 
18
 
19
 
20
21
 
22
H.-W. Loidl. Granularity in Large-Scale Parallel Functional Programming. PhD thesis, Department of Computing Science, University ofGlasgow, 1998.
 
23
J. McCarthy. A basis for a mathematical theory of computation. In Proc. Western Joint Computer Conference, pages 225-238, 1961.
24
 
25
A. K. Moran. Call-by-name, Call-by-need, and McCarthy's Amb. PhD thesis, Computing Science Department, Chalmers University, 1998.
 
26
27
 
28
G. D. Plotkin. Call-by-name, call-by-value and the -calculus. Theoretical Computer Science, 1(2):125-159, 1975.
 
29
 
30
J. H. Reppy. An operational semantics of first-class synchronous operations. Technical report, Department of Computer Science, Cornell University, 1991.
 
31
P. Roe.Parallel programming using functional languages. PhD thesis, Department of Computing Science, University of Glasgow, Glasgow, Scotland, 1991.
 
32
C. Runciman and D. Wakeling. Profiling parallel functional computations (without parallel machines). In Proceedings of the 1993 Glasgow Workshop on Functional Programming, pages 236-251, Ayr, Scotland, 1994.
 
33
 
34
35
 
36


Collaborative Colleagues:
Clem Baker-Finch: colleagues
David J. King: colleagues
Phil Trinder: colleagues

Peer to Peer - Readers of this Article have also read: