A Transformation Based on the Equality between Terms

Abstract

We present a new transformation of Prolog programs preserving operational equivalence. Our transformation --- EBC (equality based continuation) transformation --- relies on the introduction of equations between terms. These equations are used to introduce alternative and more e#- cient representations of terms. When applied to binary Prolog programs, EBC is able to perform the following optimizations by mere source to source transformations: removal of existential variables in programs using di#erence lists and accumulators, reduction of the number of occurchecks, interprocedural register allocation when executed on the WAM, linearization of recursions, optimization of continuation-like user data structures

    Similar works

    Full text

    thumbnail-image

    Available Versions