Encyclopedia of Parallel Computing

2011 Edition
| Editors: David Padua

Multilisp

  • Robert H. Halstead
Reference work entry
DOI: https://doi.org/10.1007/978-0-387-09766-4_45

Synonyms

Definition

Multilisp is a parallel programming language, focused particularly on parallel symbolic computing, developed as a research project at MIT during the 1980’s. The Multilisp language design and implementation projects served as a vehicle for exploring various ideas related to concurrency constructs, scheduling, parallel garbage collection, speculative computation, and debugging tools for parallel programs.

Discussion

Introduction

The 1980s saw much experimentation with parallel programming models, as supercomputer performance and performance/price ratios both reached new heights amid a growing variety of SIMD and MIMD parallel machines, using both shared- and distributed-memory architectures, from various vendors. It became increasingly apparent that scaling laws for hardware would eventually favor parallel computing as the most cost-effective way to achieve high performance.

A growing recognition of the challenges of programming parallel machines...

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

Bibliography

  1. 1.
    Baker H, Hewitt C (1977) The incremental garbage collection of processes. MIT Artificial Intelligence Laboratory Memo 454, CambridgeGoogle Scholar
  2. 2.
    Blumofe R et al (1995) Cilk: an efficient multithreaded runtime system. In: Proceedings of the fifth ACM symposium on principles and practice of parallel programming (PPoPP). July 1995, pp 207–216Google Scholar
  3. 3.
    Halstead R (1985) Multilisp: a language for concurrent symbolic computation. ACM Trans Prog Lang Syst 7(4):501–538zbMATHCrossRefGoogle Scholar
  4. 4.
    Halstead R (1986) Parallel symbolic computing. IEEE Comput Mag vol 19(8):35–43CrossRefGoogle Scholar
  5. 5.
    Halstead R (1990) New ideas in parallel lisp: language design, implementation, and programming tools. In: Proceedings of US/Japan workshop on parallel lisp, Lecture Notes in Computer Science 441. Springer, Heidelberg, pp 2–57Google Scholar
  6. 6.
    Halstead R, Ito T (eds) (1993) Parallel symbolic computing: languages, systems, and applications. In: Proceedings of US/Japan workshop on parallel symbolic computing, Lecture Notes in Computer Science 748. Springer, HeidelbergzbMATHGoogle Scholar
  7. 7.
    Halstead R, Kranz D, Sobalvarro P (1993) MulTVision: a tool for visualizing parallel program executions. In: Proceedings of US/Japan workshop on parallel symbolic computing, Lecture Notes in Computer Science 748. Springer, Heidelberg, pp 183–204Google Scholar
  8. 8.
    Halstead R, Loaiza J (1985) Exception handling in multilisp. In: Proceedings of the 1985 international conference on parallel processing, St. Charles, IL, August 1985, pp 822–830Google Scholar
  9. 9.
    Ito T, Halstead R (eds) (1990) Parallel lisp: languages and systems. In: Proceedings of US/Japan workshop on parallel lisp, Lecture Notes in Computer Science 441. Springer, HeidelbergCrossRefGoogle Scholar
  10. 10.
    Kelsey R, Clinger W, Rees J (eds) (1998) Revised5 report on the algorithmic language scheme. ACM SIGPLAN Not 33(9):26–76Google Scholar
  11. 11.
    Kornfeld W, Hewitt C (1981) The scientific community metaphor. IEEE Trans Syst Man Cybern, pp 24–33Google Scholar
  12. 12.
    Kranz D, Halstead R, Mohr E (1989) Mul-T: a high-performance parallel lisp. In: Proceedings of ACM SIGPLAN ’89 Conference on programming language design and implementation. Portland, Oregon, pp 81–90Google Scholar
  13. 13.
    Miller J (1987) MultiScheme: a parallel processing system based on MIT scheme. MIT Laboratory for Computer Science Technical Report TR-402, CambridgeGoogle Scholar
  14. 14.
    Mohr E, Kranz D, Halstead R (1991) Lazy task creation: a technique for increasing the granularity of parallel programs. IEEE Trans Parallel Dist Syst 2(3):264–280CrossRefGoogle Scholar
  15. 15.
    Osborne R (1990) Speculative computation in multilisp. In: Proceedings of US/Japan workshop on parallel lisp, Lecture Notes in Computer Science 441. Springer, Heidelberg, pp 103–137Google Scholar
  16. 16.
    Peyton Jones S, Clack C, Salkild J (1989) High-performance parallel graph reduction. In: PARLE ’89 Proceedings, Lecture Notes in Computer Science 365. Springer, Berkley, pp 193–206Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2011

Authors and Affiliations

  • Robert H. Halstead
    • 1
  1. 1.Curl Inc.CambridgeUSA