Raphael Collet wrote:
Chris vanBuskirk wrote:

I am trying to implement the disjunctive combinator as described in chapter
11 of Christian Schulte's spaces book ... using Alice, instead of mOZart.
Basically, this (sort of) involves waiting around until all but one of the child spaces (one per branch in the disjunction) are positively failed, and then merging the remaining alternative with its parent space. But it seems that there is no equivalent to `{Space.askVerbose s}` in
alice's structures.  Is it not possible to differentiate between "stable"
spaces and spaces that are "blocked" on a variable in their parent space
using Alice ML?

As Torsten pointed out, Alice uses Gecode (www.gecode.org) for the implementation of the constraint system. Gecode computation space are less general than Oz spaces. Basically there is no support for space hierarchies like in Mozart.

For constraint programming this limitation is perfectly reasonable: the Mozart experience showed that using space combinators for CP was too expensive. Explicit reification usually provides better performance, which is what Gecode aims at.

That's right, this is one of the major design differences between Gecode and Mozart. We do have plans, however, to support a limited form of combinators, which is not based on space hierarchies and gives a good trade-off between efficiency and flexibility. Anyway, this is something for Gecode 2.x. For further discussion, I'd also suggest the Gecode or Alice mailing lists.

Cheers,
        Guido

_________________________________________________________________________________
mozart-users mailing list                               
mozart-users@ps.uni-sb.de
http://www.mozart-oz.org/mailman/listinfo/mozart-users

Reply via email to