Preserving Information During Online Partial Evaluation

Erik Ruf and Daniel Weise

Abstract

The degree to which a partial evaluator can specialize a source program depends on how accurately the partial evaluator can represent and maintain information about runtime values. Partial evaluators always lose some accuracy due to their use of finite type systems; however, existing partial evaluation techniques lose information about runtime values even when their type systems are capable of representing such information. This paper describes two sources of such loss in existing specializers, solutions for both cases, and the implementation of these solutions in our partial evaluation system, FUSE.

Details

Publication typeInproceedings
> Publications > Preserving Information During Online Partial Evaluation