For instance, here is the "adder" example from the paper, using Scryer Prolog and its built-in constraint solver over integers:
?- A1 + A2 #= Sum.
?- A1 + A2 #= 5.
?- -2 + A2 #= 5.
A2 = 7.
The speed and sophistication of built-in constraint solvers over various domains is often an important reason for buying a commercial Prolog system.
My first thought, given how old the paper is, is what kind of further research and applications did this lead to?
Or was it a dead-end?
The easiest way to test CP out is probably using the modelling language MiniZinc. It is from the CP tradition in how models are expressed, but can compile down to many different types of solvers.
While there are programming languages that integrate CP, the main way it is implemented and used is through libraries such as Gecode, Google Or-tools, and IBM CP Optimizer.
But I have on my bookshelf Principles And Practice of Constraint Programming, edited by Saraswat and Van Hentenryck (1995) and wikipedia has an entry for the approach . So the paradigm was up-and-coming for a time. A lot of ideas can rise and fall over forty years. Broadly, it was more or less part of logic programming, which was part of the symbolic/GOFAI (good old fashioned AI) paradigm, which naturally has been waning for many years.
Many Prologs support constraint modeling. Common Lisp has the Screamer package which is built on the idea. minikanren provides constraint modeling in many languages.