Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Representing S-expressions for the efficient evaluation of Lisp on parallel processors

Technical Report ·
OSTI ID:7249712
Present methods for exploiting parallelism in Lisp programs perform poorly upon 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 computation (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. In this paper we describe the representation of s-expressions employed 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. 12 refs.
Research Organization:
Illinois Univ., Urbana (USA). Center for Supercomputing Research and Development
DOE Contract Number:
FG02-85ER25001
OSTI ID:
7249712
Report Number(s):
DOE/ER/25001-8; CSRD-564; ON: DE87002085
Country of Publication:
United States
Language:
English

Similar Records

Parcel: Project for the Automatic Restructuring and Concurrent Evaluation of Lisp
Technical Report · Wed Dec 31 23:00:00 EST 1986 · OSTI ID:5734898

Compiling Lisp for evaluation on a tightly coupled multiprocessor
Technical Report · Wed Mar 19 23:00:00 EST 1986 · OSTI ID:7008110

Parallel Lisp simulator
Technical Report · Sun May 01 00:00:00 EDT 1988 · OSTI ID:6792175