Using the technique known as meta-programming, it is possible to implement CLP completely in PROLOG. The disadvantage of this approach is degradation of performance that is typical for meta-programming.