@INPROCEEDINGS{AlbertHanusVidal01FLOPS,
author = "Albert, E. and Hanus, M. and Vidal, G.",
title = "A Practical Partial Evaluator for a Multi-Paradigm Declarative Language",
year = "2001",
publisher = "Springer LNCS 2024",
booktitle = "Proc.\ of the 5th International Symposium on
             Functional and Logic Programming (FLOPS 2001)"
pages = "326-342",
abstract = {
Partial evaluation is an automatic technique for program optimization
which preserves program semantics. The range of its potential
applications is extremely large, as witnessed by successful
experiences in several fields.  This paper summarizes our findings in
the development of partial evaluation tools for Curry, a modern
multi-paradigm declarative language which combines features from
functional, logic and concurrent programming.  From a practical point
of view, the most promising approach appears to be a recent partial
evaluation framework which translates source programs into a maximally
simplified representation. We support this statement by extending the
underlying method in order to design a practical partial evaluation
tool for the language Curry.  The process is fully automatic and can
be incorporated into a Curry compiler as a source-to-source
transformation on intermediate programs.  An implementation of the
partial evaluator has been undertaken.  Experimental results confirm
that our partial evaluator pays off in practice.
}
}

