Concurrent Constraint Programming

Concurrent constraint programming arose as a synthesis of the ideas of concurrent logic programming and constraint logic programming. The basic idea is due to Michael Maher, who suggested that the synchronization primitive in a specific concurrent logic programming language (ALPS) could be understood in terms of general semantic notions of entailment. My thesis Concurrent Constraint Programming developed these ideas further, isolating the notion of store-as-constraint with the primitive operations of ask and tell to build up calculii for concurrency.

Watch this space for a fuller account of the development of this topic, links to the work of other authors in this field, and a summary of current work being done in this field.

In the meantime here is a link to the course I am teaching (Spring 03) on Model-based programming.