Theoretical Computer Science
Theoretical Computer Science - International Joint Conference on Theory and Practice of Software Development, P
A single cached copy data coherence scheme for multiprocessor systems
ACM SIGARCH Computer Architecture News
Copying and Swapping: Influences on the Design of Reusable Software Components
IEEE Transactions on Software Engineering
Is there a use for linear logic?
PEPM '91 Proceedings of the 1991 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Islands: aliasing protection in object-oriented languages
OOPSLA '91 Conference proceedings on Object-oriented programming systems, languages, and applications
Proving memory management invariants for a language based on linear logic
LFP '92 Proceedings of the 1992 ACM conference on LISP and functional programming
Lively linear Lisp: “look ma, no garbage!”
ACM SIGPLAN Notices
Computational interpretations of linear logic
Theoretical Computer Science - Special volume of selected papers of the Sixth Workshop on the Mathematical Foundations of Programming Semantics, Kingston, Ont., Canada, May 1990
Analysis of pointer “rotation”
Communications of the ACM
Computer Algorithms: Introduction to Design and Analysis
Computer Algorithms: Introduction to Design and Analysis
Mechanisms for compile-time enforcement of security
POPL '83 Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
The Design and Analysis of Computer Algorithms
The Design and Analysis of Computer Algorithms
Proceedings of the 5th ACM Conference on Functional Programming Languages and Computer Architecture
NREVERSAL of Fortune - The Thermodynamics of Garbage Collection
IWMM '92 Proceedings of the International Workshop on Memory Management
The Boyer benchmark meets linear logic
ACM SIGPLAN Lisp Pointers
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Type System for Bounded Space and Functional In-Place Update--Extended Abstract
ESOP '00 Proceedings of the 9th European Symposium on Programming Languages and Systems
A type system for bounded space and functional in-place update
Nordic Journal of Computing
LUV '94 Papers of the fourth international conference on LISP users and vendors
Hi-index | 0.00 |
The linear style of programming inspired by linear logic has been proposed to reduce garbage collection and synchronization costs in serial and parallel systems. We programmed Quicksort for both lists and arrays in a "linear" fragment of Lisp to estimate the performance impact of linearity on a serial machine. Even though Quicksort is well-tuned for current non-linear architectures, we find that linearity extracts no real penalty. Our "linear" list Quicksort is as fast as any non-linear list Quicksort, and our "linear" vector Quicksort is only 3.5% slower than a non-linear vector Quicksort. The linear style is moderately pleasant, and the redundancy of linearity checking can aid in finding bugs.