Concurrent scheme

  • Robert R. Kessler
  • Mark R. Swanson
Part I Parallel Lisp Languages and Programming Models
Part of the Lecture Notes in Computer Science book series (LNCS, volume 441)


This paper describes an evolution of the Scheme language to support parallelism with tight coupling of control and data. Mechanisms are presented to address the difficult and related problems of mutual exclusion and data sharing which arise in concurrent language systems. The mechanisms are tailored to preserve Scheme semantics as much as possible while allowing for efficient implementation. Prototype implementations of the resulting language are described which have been completed. A third implementation is underway for the Mayfly, a distributed memory, twisted-torus communication topology, parallel processor, under development at the Hewlett-Packard Research Laboratories. The language model is particularly well suited for the Mayfly processor, as will be shown.


Mutual Exclusion Garbage Collection Context Switch Delay Queue Current Domain 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [BH77]
    H. Baker and C. Hewitt. The Incremental Garbage Collection of Processes. AI Memo AIM-454, MIT AI Laboratory, Cambridge MA, December 1977.Google Scholar
  2. [Dav89]
    A. Davis. The Mayfly Parallel Processing System. Technical Report HPL-SAL-89-22, Hewlett-Packard Research Laboratory, March 1989.Google Scholar
  3. [DR85]
    A. L. Davis and S. V Robison. The Architecture of the FAIM-1 Symbolic Multiprocessing System. In Proc. IJCAI-85, pages 32–38, 1985.Google Scholar
  4. [FJSW85]
    E.J. Feinler, O.J. Jacobsen, M.K. Stahl, and C.A. Ward. DDN Protocol Handbook, Volume Two, DARPA Internet Protocols. Sri International, 1985.Google Scholar
  5. [GM84]
    R.P. Gabriel and J. McCarthy. Queue-based Multi-processing Lisp. In Conference Record of the 1984 ACM Symposium on Lisp and Functional Programming, pages 25–44, August 1984.Google Scholar
  6. [HJ85]
    R.H. Halstead Jr. Multilisp: A Language for Concurrent Symbolic Computation. Transactions of Programming Languages and Systems, 7(4):501–538, October 1985.Google Scholar
  7. [Hoa74]
    C.A.R. Hoare. Monitors: An Operating System Structuring Concept. Communications of the ACM, 17(10):549–557, October 1974.Google Scholar
  8. [Mil87]
    J. S. Miller. MultiScheme, A Parallel Processing System Based on MIT Scheme. PhD thesis, Department of Electrical Engineering and Computer Science, MIT, August 1987.Google Scholar
  9. [Nie87]
    O. M. Nierstrasz. Active Objects in Hybrid. In Object-Oriented Programming Systems, Languages, and Applications 1987 Conference Proceedings, pages 243–253, 1987.Google Scholar
  10. [RC86]
    J. Rees and W. Clinger. Revised3 Report on the Algorithmic Language Scheme. SIGPLAN Notices, 21(12):37–79, December 1986.Google Scholar
  11. [SRD86]
    K. Stevens, S. Robison, and A. L. Davis. The Post Office: Communications Support for Distributed Ensemble Architectures. In Proceedings of the 6th International Conference on Distributed Computing Systems, pages 160–166, May 1986.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1990

Authors and Affiliations

  • Robert R. Kessler
    • 1
  • Mark R. Swanson
    • 1
  1. 1.Utah Portable A.I. Support Systems Project, Department of Computer ScienceUniversity of UtahSalt Lake City

Personalised recommendations