next up previous
Next: Libraries for Embedded Constraint Up: Constraints Embedded in A Previous: Concurrency

Logic Programming as a Host Language

Constraints fit hand in glove with declarative host programming languages. Three of the most influential constraint programming languages were embedded in Prolog: PrologIII, CLP(R) and CHIP. Whilst all three system are still developing further, there are many new constraint programming systems emerging including ECLiPSe, Oz, 2LP, and Newton.

From a theoretical point of view the extension of logic programming to Constraint Logic Programming (CLP) has been very fruitful. A good survey is

(Jaffar and Maher, 1994). For example ALPS - a form of logic programming with guards - was an extremely influential language, becoming the forerunner of the Concurrent Constraints paradigm

(Saraswat, 1993). Concurrent constraint programming has in turn provided a very clean model of concurrent and multi-agent computing. Constraints can also be modelled in terms of information systems, which allows us to reason about the behaviour of constraint programs at an abstract level.

Mark Wallace
Wed Sep 3 18:36:40 BST 1997