REPRESENTING S-EXPRESSIONS FOR THE EFFICIENT EVALUATION OF LISP ON PARALLEL PROCESSORS.

W. Ludwell Harrison, David A. Padua

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Present methods for exploiting parallelism in Lisp programs perform poorly on lists (long, flat s-expressions), as such structures must be both created and traversed sequentially. While such a serial operation may be masked by overlapping it with other computations (by virtue of process spawning, or by the use of a mechanism such as futures), it represents a lost (and potentially large) source of parallelism. A description is given of the representation of s-expressions used in PARCEL (Project for the Automatic Restructuring and Concurrent Evaluation of Lisp), which facilitates the creation and access of lists, without compromising the performance of functions which manipulate s-expressions of a more general shape. Using this representation, the PARCEL compiler translates Lisp programs written in a subset of the Scheme dialect (which allows for global variables and atom properties) into code for a large, tightly coupled shared memory multiprocessor.

Original languageEnglish (US)
Title of host publicationProceedings of the International Conference on Parallel Processing
EditorsKai Hwang, Steven M. Jacobs, Earl E. Swartzlander
PublisherIEEE
Pages703-710
Number of pages8
ISBN (Print)0818607246
StatePublished - Dec 1 1986

Publication series

NameProceedings of the International Conference on Parallel Processing
ISSN (Print)0190-3918

ASJC Scopus subject areas

  • Hardware and Architecture

Fingerprint Dive into the research topics of 'REPRESENTING S-EXPRESSIONS FOR THE EFFICIENT EVALUATION OF LISP ON PARALLEL PROCESSORS.'. Together they form a unique fingerprint.

Cite this