Prolog itself can be considered as CLP(H): Constraint Logic Programming over Herbrand terms. With this perspective, a Prolog program posts constraints over terms. For example:
?- X = f(Y), Y = a. X = f(a), Y = a.