Performance and evaluation of LISP systems
Performance and evaluation of LISP systems
MULTILISP: a language for concurrent symbolic computation
ACM Transactions on Programming Languages and Systems (TOPLAS)
A case study of parallel execution of a rule-based expert system
International Journal of Parallel Programming
LFP '82 Proceedings of the 1982 ACM symposium on LISP and functional programming
The Incremental Garbage Collection of Processes
The Incremental Garbage Collection of Processes
Mul-T: a high-performance parallel Lisp
PLDI '89 Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation
Procs and locks: a portable multiprocessing platform for standard ML of New Jersey
PPOPP '93 Proceedings of the fourth ACM SIGPLAN symposium on Principles and practice of parallel programming
HOPL-II The second ACM SIGPLAN conference on History of programming languages
Equal rights for functional objects or, the more things change, the more they are the same
ACM SIGPLAN OOPS Messenger
The semantics of future and its use in program optimization
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Qlisp: Parallel Processing in Lisp
IEEE Software
The semantics of future and an application
Journal of Functional Programming
History of programming languages---II
Hi-index | 0.00 |
An implementation of the Portable Standard Lisp (PSL) on the BBN Butterfly is described. Butterfly PSL is identical, syntactically and semantically, to implementations of PSL currently available on the VAX, Gould, and many 68000-based machines, except for the differences discussed in this paper. The differences include the addition of the future and touch constructs for explicit parallelism and an extension of the fluid binding mechanism to support the multiple environments required by concurrent tasks. As with all other PSL implementations, full compilation to machine code of the basic system and application source code is the normal mode, in contrast to the previous byte-code interpreter efforts. Also discussed are other required changes to the PSL system not visible in the syntax or semantics, e.g., compiler support for the future construct. Finally, the underlying hardware is described, and timings for basic operations and speedup results for two examples are given.