Author(s)
Interfacing Propagators with a Concurrent Constraint Language
Abstract
This paper deals with an interface for the concurrent constraint
language Oz to implement arbitrary constraints in an efficient
manner. The programmer has all the advantages of a high-level language
in combination with efficiency. For the user it is transparent,
whether a constraint is implemented by an Oz procedure or through the
interface. The interface is completely separated from the underlying
abstract machine of Oz. Moreover, it frees the user from tedious tasks
like suspending and waking of constraints.
As an implementation language we use C++. The overall efficiency of the
resulting system is comparable to existing finite domain systems. For
scheduling applications we show that algorithms from Operations Research
can be incoroporated, which allows to obtain results comparable to
commercially available systems.