Strictness computation using special &lgr;-expressions
on Programs as data objects
Volume II: Parallel Languages on PARLE: Parallel Architectures and Languages Europe
14th International Colloquium on Automata, languages and programming
Projections for strictness analysis
Proc. of a conference on Functional programming languages and computer architecture
Evaluation transformers—a model for the parallel evolution of functional languages
Proc. of a conference on Functional programming languages and computer architecture
Compiling strictness into streams
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
Two-level semantics and abstract interpretation
Theoretical Computer Science
A relationship between abstract interpretation and projection analysis
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The spineless tagless G-machine
FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Higher-order strictness analysis in untyped lambda calculus
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Systematic design of program analysis frameworks
POPL '79 Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Distributed Implementation of Programmed Graph Reduction
PARLE '89 Proceedings of the Parallel Architectures and Languages Europe, Volume I: Parallel Architectures
The correctness of an optimized code generation
PEPM '93 Proceedings of the 1993 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Assessing the evaluation transformer model of reduction on the spineless G-machine
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Hi-index | 0.00 |
Projection analysis is a technique for finding out information about lazy functional programs. We show how the information obtained from this analysis can be used to speed up sequential implementations, and introduce parallelism into parallel implementations. The underlying evaluation model is evaluation transformers, where the amount of evaluation that is allowed of an argument in a function application depends on the amount of evaluation allowed of the application. We prove that the transformed programs preserve the semantics of the original programs.Compilation rules, which encode the information from the analysis, are given for sequential and parallel machines.