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)
ORBIT: an optimizing compiler for scheme
SIGPLAN '86 Proceedings of the 1986 SIGPLAN symposium on Compiler construction
Implementing a scheme-based parallel processing system
International Journal of Parallel Programming
Mul-T: a high-performance parallel Lisp
PLDI '89 Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation
Free variables and first-class environments
Lisp and Symbolic Computation
A C interpreter for Scheme: an exercise in object-oriented design
Software Engineering Journal
A foundation for an efficient multi-threaded scheme system
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
Lambda, the ultimate label or a simple optimizing compiler for Scheme
LFP '94 Proceedings of the 1994 ACM conference on LISP and functional programming
Polling efficiently on stock hardware
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Cache performance of garbage-collected programs
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
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
A compacting incremental collector and its performance in a production quality compiler
Proceedings of the 1st international symposium on Memory management
Revised report on the algorithmic language scheme
ACM SIGPLAN Lisp Pointers
The semantics of future and an application
Journal of Functional Programming
Speculative Inlining of Predefined Procedures in an R5RS Scheme to C Compiler
Implementation and Application of Functional Languages
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
Closure generation based on viewing lambda as epsilon plus compile
Computer Languages
Hi-index | 0.00 |
Programs compiled by Gambit, our Scheme compiler, achieve performance as much as twice that of the fastest available Scheme compilers. Gambit is easily ported, while retaining its high performance, through the use of a simple virtual machine (PVM). PVM allows a wide variety of machine-independent optimizations and it supports parallel computation based on the future construct. PVM conveys high-level information bidirectionally between the machine-independent front end of the compiler and the machine-dependent back end, making it easy to implement a number of common back end optimizations that are difficult to achieve for other virtual machines.PVM is similar to many real computer architectures and has an option to efficiently gather dynamic measurements of virtual machine usage. These measurements can be used in performance prediction for ports to other architectures as well as design decisions related to proposed optimizations and object representations.