Results 1 -
6 of
6
An Introduction to Partial Evaluation
- ACM Computing Surveys
, 1996
"... Partial evaluation provides a unifying paradigm for a broad spectrum of work in ..."
Abstract
-
Cited by 120 (0 self)
- Add to MetaCart
Partial evaluation provides a unifying paradigm for a broad spectrum of work in
Optimizing Generic Functions
- MATHEMATICS OF PROGRAM CONSTRUCTION, VOLUME 3125 OF LNCS
, 2004
"... Generic functions are defined by induction on the structural representation of types. As a consequence, by defining just a single generic operation, one acquires this operation over any particular type. An instance on a specific type is generated by interpretation of the type's structure. A dire ..."
Abstract
-
Cited by 7 (0 self)
- Add to MetaCart
Generic functions are defined by induction on the structural representation of types. As a consequence, by defining just a single generic operation, one acquires this operation over any particular type. An instance on a specific type is generated by interpretation of the type's structure. A direct translation leads to extremely ine#cient code that involves many conversions between types and their structural representations. In this
Distributed Partial Evaluation
- Parallel Symbolic Computation: PASCO ’97
, 1997
"... Partial evaluation is an automatic program transformation that optimizes programs by specialization. We speed up the specialization process by utilizing the natural coarse-grained parallelism inherent in the partial evaluation process. We have supplemented an existing partial evaluation system for t ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
Partial evaluation is an automatic program transformation that optimizes programs by specialization. We speed up the specialization process by utilizing the natural coarse-grained parallelism inherent in the partial evaluation process. We have supplemented an existing partial evaluation system for the Scheme programming language by a farm-of-workers model for parallel partial evaluation in a network of loosely coupled workstations. Our implementation speeds up specialization by a factor of 2--3 on 6 processors. Keywords functional programming, automatic program transformation, partial evaluation 1 Introduction Partial evaluation is a powerful program-specialization technique based on constant propagation. Given the static (known) parameters of a source program, partial evaluation constructs a residual program---an optimized, specialized version of the program, which on application to the remaining dynamic parameters produces the same result as the original program applied to all pa...
Imperative Program Optimization by Partial Evaluation
, 2004
"... We implement strength reduction and loop-invariant code motion by specializing instrumented interpreters; we define a novel program transformation that uses bisimulation to identify and remove code duplication in residual programs; and we discover that some simple classical optimizations, notably co ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
We implement strength reduction and loop-invariant code motion by specializing instrumented interpreters; we define a novel program transformation that uses bisimulation to identify and remove code duplication in residual programs; and we discover that some simple classical optimizations, notably constant-propagation, seemingly do not lend themselves to implementation by specialization of instrumented interpreters.
Efficient Generic Functional Programming
, 2004
"... Generic functions are defined by induction on the structural representation of types. As a consequence, by defining just a single generic operation, one acquires this operation over any particular data type. ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Generic functions are defined by induction on the structural representation of types. As a consequence, by defining just a single generic operation, one acquires this operation over any particular data type.
Jones Optimality, Binding-Time Improvements, and the Strength of Program Specializers
"... Jones optimality tells us that a program specializer is strong enough to remove an entire level of self-interpretation. We show that Jones optimality, which was originally aimed at the Futamura projections, plays an important role in binding-time improvements. The main results show that, regardless ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Jones optimality tells us that a program specializer is strong enough to remove an entire level of self-interpretation. We show that Jones optimality, which was originally aimed at the Futamura projections, plays an important role in binding-time improvements. The main results show that, regardless of the binding-time improvements which we apply to a source program, no matter how extensively, a specializer that is not Jones-optimal is strictly weaker than a specializer which is Jones optimal. By viewing a binding-time improver as a generating extension of a self-interpreter, we can connect our results with previous work on the interpretive approach.

