In this experimental work, we extend type-directed partial evaluation (a.k.a. "reduction-free normalization" and "normalization by evaluation") to make it online, by enriching it with primitive operations (delta-rules). Each call to a primitive operator is either unfolded or residualized, depending on the operands and either with a default policy or with a user-supplied filter. The user can also specify how to residualize an operation, by pattern-matching over the operands. Operators may be pure or have a computational effect. We report a complete implementation of online type-directed partial evaluation in Scheme, extending our earlier offline implementation.Our partial evaluator is native in that it runs compiled code instead of using the...
We revisit Bondorf and Palsberg's compilation of actions using< the offline syntax-directed partial ...
Partial-evaluation folklore has it that massaging one's source programs can make them specialize bet...
Partial evaluation specializes terms, but traditionally thisspecialization does not apply to the typ...
We present a strikingly simple partial evaluator, that is type-directed and reifies a compiled progr...
Type-directed partial evaluation stems from the residualization of static values in dynamic contexts...
We formally characterize partial evaluation of functional programs as a normalization problem in an ...
We use a code generator--type-directed partial evaluation--to verify conversions between isomorphic ...
We investigate the synergy between type-directed partial evaluation and run-time code generation for...
This article presents an alternative method of type-directed partial evaluation, which is simpler an...
We demonstrate the usefulness of higher-order rewriting techniques for specializing programs, i.e., ...
This paper is a short tutorial introduction to online partial evaluation. We show how to write a sim...
We present a simple way to implement typed abstract syntax for thelambda calculus in Haskell, using ...
International audienceWe show how testing convertibility of two types in dependently typed systems c...
International audienceDependently typed theorem provers allow arbitrary terms in types. It is conven...
A generating extension of a program specializes it with respect tosome specified part of the input. ...
We revisit Bondorf and Palsberg's compilation of actions using< the offline syntax-directed partial ...
Partial-evaluation folklore has it that massaging one's source programs can make them specialize bet...
Partial evaluation specializes terms, but traditionally thisspecialization does not apply to the typ...
We present a strikingly simple partial evaluator, that is type-directed and reifies a compiled progr...
Type-directed partial evaluation stems from the residualization of static values in dynamic contexts...
We formally characterize partial evaluation of functional programs as a normalization problem in an ...
We use a code generator--type-directed partial evaluation--to verify conversions between isomorphic ...
We investigate the synergy between type-directed partial evaluation and run-time code generation for...
This article presents an alternative method of type-directed partial evaluation, which is simpler an...
We demonstrate the usefulness of higher-order rewriting techniques for specializing programs, i.e., ...
This paper is a short tutorial introduction to online partial evaluation. We show how to write a sim...
We present a simple way to implement typed abstract syntax for thelambda calculus in Haskell, using ...
International audienceWe show how testing convertibility of two types in dependently typed systems c...
International audienceDependently typed theorem provers allow arbitrary terms in types. It is conven...
A generating extension of a program specializes it with respect tosome specified part of the input. ...
We revisit Bondorf and Palsberg's compilation of actions using< the offline syntax-directed partial ...
Partial-evaluation folklore has it that massaging one's source programs can make them specialize bet...
Partial evaluation specializes terms, but traditionally thisspecialization does not apply to the typ...