Skip to main content

An implementation of static functional process networks

  • Conference paper
  • First Online:
PARLE '92 Parallel Architectures and Languages Europe (PARLE 1992)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 605))

Abstract

To get high performance on a distributed-memory multicomputer at present and for the foreseeable future, some explicit control is needed. This paper describes work aimed at harnessing the power of the functional notation in exercising such control. We have developed a declarative annotation scheme which allows explicit control over process placement and communications. The language, called Caliban, has been implemented on a configurable, loosely coupled commercial multicomputer and we describe the compiler and run-time system.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. AI Limited. Strand-88 language definition. Technical report, AI Limited, Greycaine Rd. Watford, Herts, UK, 1988.

    Google Scholar 

  2. [BvEG+87] H.P. Barendregt, M.C.J.D. van Eekelen, J.R.W. Glauert, J.R. Kennaway, M.J. Plasmeijer, and M.R. Sleep. Term graph rewriting. 1987. In [dBNT87, pages 141–158].

    Google Scholar 

  3. J.W. de Bakker, A.J. Nijman, and P.C. Treleaven, editors. Parle, Parallel Architectures and Languages Europe, volume II. Springer Verlag, June 1987. LNCS 259.

    Google Scholar 

  4. Hugh Glaser, Pieter Hartel, and John Wild. A pragmatic approach to the analysis and compilation of lazy functional languages. In Proc. of the Workshop on Parallel and Distributed Processing, Sofia, 1990. North-Holland, 1990.

    Google Scholar 

  5. Benjamin F. Goldberg. Multiprocessor Execution of Functional Programs. Research report, Yale University Department of Computer Science, April 1988.

    Google Scholar 

  6. P. Hudak. Para-functional programming. IEEE Computer, pages 60–70, August 1986.

    Google Scholar 

  7. J. Hughes. Why functional programming matters. Report 16, Programming Methodology Group, University of Göteborg and Chalmers Institute of Technology, Sweden, November 1984.

    Google Scholar 

  8. P. Hudak and P. Wadler (editors). Report on the programming language Haskell, a non-strict purely functional language (Version 1.0). Technical Report YALEU/DCS/RR777, Yale University, Department of Computer Science, April 1990.

    Google Scholar 

  9. G. Kahn. The semantics of a simple language for parallel programming. In Information Processing 74. North-Holland, 1974.

    Google Scholar 

  10. Paul H.J. Kelly. Functional Programming for Loosely-coupled Multiprocessors. Pitman/MIT Press, 1989.

    Google Scholar 

  11. J. Magee and N. Dulay. A configuration approach to parallel programming. In Parle, Parallel Architectures and Languages Europe, volume II, pages 313–330. Springer Verlag, 1991. LNCS 506.

    Google Scholar 

  12. M.C.J.D. van Eekelen, M.J. Plasmeijer, and J.E.W. Smetsers. Parallel graph rewriting on loosely-coupled machine architectures. Technical report, Faculty of Computer Science and Mathematics, University of Nijmegen, February 1990.

    Google Scholar 

  13. W.W. Wadge. An extensional treatment of dataflow deadlock. Theoretical Computer Science, 13:3–15, 1981.

    Article  Google Scholar 

  14. Hans Zima and Barbara Chapman. Supercompilers for Parallel and Vector Computers. ACM Press, 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Daniel Etiemble Jean-Claude Syre

Rights and permissions

Reprints and permissions

Copyright information

© 1992 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Cox, S., Huang, SY., Kelly, P., Liu, J., Taylor, F. (1992). An implementation of static functional process networks. In: Etiemble, D., Syre, JC. (eds) PARLE '92 Parallel Architectures and Languages Europe. PARLE 1992. Lecture Notes in Computer Science, vol 605. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-55599-4_107

Download citation

  • DOI: https://doi.org/10.1007/3-540-55599-4_107

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-55599-5

  • Online ISBN: 978-3-540-47250-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics