QLISP for Parallel Processors
Abstract
Stanford University has completed the initial phase of the Qlisp project for research on parallel Lisp programming. The research made use of the Qlisp implementation on the Alliant FX/8 delivered by Lucid, Inc. under subcontract to Stanford University. The results we have obtained confirm, in general, our predictions that a shared-memory multiprocessor is an effective tool for executing symbolic programs in Lisp. The major highlights of Qlisp have been: 1) Demonstrating that Qlisp could be implemented as originally specified, and incorporating additional features that we found to be necessary or desirable; 2) Discovering the importance of dynamic control of parallelism; and 3) Implementing the basic parts of several major Lisp applications, and finding that Qlisp was a good vehicle for expressing the parallelism in these programs. The implementations of Qlisp proceeded with few difficulties. Several major enhancements to Lucid Common Lisp, that had been envisioned as necessary, were performed. These include deep binding (for special variables); support for multiple control stacks; and the removal or synchronization of many parts of the system that otherwise would not run correctly in parallel. The control of parallelism at runtime was known from the start to be an important part of programming in Qlisp.
Document Details
- Document Type
- Technical Report
- Publication Date
- Nov 01, 1990
- Accession Number
- ADA228843
Entities
People
- John McCarthy
Organizations
- Stanford University