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.
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...
- 1.Baker H, Hewitt C (1977) The incremental garbage collection of processes. MIT Artificial Intelligence Laboratory Memo 454, CambridgeGoogle Scholar
- 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
- 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
- 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.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
- 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.Kornfeld W, Hewitt C (1981) The scientific community metaphor. IEEE Trans Syst Man Cybern, pp 24–33Google Scholar
- 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.Miller J (1987) MultiScheme: a parallel processing system based on MIT scheme. MIT Laboratory for Computer Science Technical Report TR-402, CambridgeGoogle Scholar
- 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.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