In the Oz world, the method of solution is programmable through the
concept of Computation Spaces. Oz has the freedom to program different
solvers that interleave the computations in any number of ways. As I
wrote elsewhere, "the actual strategy in Oz is determined by the Solve
function (which corresponds to the "run" function in Scheme), not in the
declaration of choice (conde, condi, conda, condu)". It should be quite
feasible to program a solver in Oz which corresponds to the various
interleave choices provided by Kanren.
On the translation front, I haven't got much further, mostly owing to
the time constraints of working on several startup ventures. Where I
left off was the point where I needed to figure out how to program
search strategies beyond the out-of-the-box depth-first search Solve
function. Russ Abbott did provide me with a breadth-first solution:
http://cs.calstatela.edu/wiki/index.php/Courses/CS_460/Fall_2005/SolveAll
As I recall his solver did correctly do a breadth-first search, but it
didn't return the solution list in the same order as condi. I started
to read Christian's book but it was about that time that I got off-track
and haven't seen my way clear to complete the project yet.
In the meantime, perhaps others that are more familiar with Oz can
provide a better overview of how Oz uses Computation Spaces to achieve
various interleaving strategies.
Thanks,
Chris Rathman
Daniel Friedman wrote:
Chris,
I was wondering if you tackled any of the arithmetic code of chapters
7 and 8. The reason I am curious is that
we use interleaving computations to get that to work and I don't know
how OZ handles that. It would be very
educational to see how that works in OZ.
... Dan
_________________________________________________________________________________
mozart-users mailing list
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users
_________________________________________________________________________________
mozart-users mailing list
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users