Some global compile-time optimizations for CLP(R)
Niels Jørgensen, Kim Marriott, and Spiro Michaylov.
Abstract:
Generation of efficient code for
constraint logic programming
(CLP) languages poses new problems.
It is not yet clear which techniques from Prolog compilation will
be important nor what sort of domain specific techniques can be developed.
As a case study,
we describe and evaluate four global optimizations
for use in the compilation of the language CLP(R).
The first three are variants of optimizations used in Prolog compilation.
The fourth is novel, and is based on finding constraints
which are "future redundant" in the sense that at some point in the future
they will be implied by other constraints.
Finally, we give evidence in the form of preliminary tests
that these optimizations can significantly improve performance.