| | |
Summary: Measuring the Effectiveness of Partial
Evaluation ? ??
Elvira Albert 1 , Sergio Antoy 2 , and Germ'an Vidal 1
1 DSIC, Technical University of Valencia, fealbert,gvidalg@dsic.upv.es
2 Department of Computer Science, Portland State University, antoy@cs.pdx.edu
Abstract. We introduce a framework for assessing the effectiveness of
partial evaluators for functional logic programs. Our framework is based
on properties of the rewrite system that models a functional logic pro
gram and, consequently, our assessment is independent of any specific
language implementation or computing environment. We define several
criteria for measuring the cost of a computation: number of steps, num
ber of function applications, and effort for pattern matching. Most im
portantly, we express the cost of each criterion by means of recurrence
equations over algebraic data types, which can be automatically inferred
from the partial evaluation process itself. In some cases, the equations
can be solved by transforming their arguments from arbitrary data types
to natural numbers. In other cases, it is possible to estimate the improve
ment of a partial evaluation by analyzing the recurrence equations.
1 Introduction
Partial evaluation (PE) is a sourcetosource program transformation technique
|