forked from clojure/core.logic
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
anoter issue with cKanren, related to suspensions
- Loading branch information
Showing
1 changed file
with
12 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
63a9805
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've been working on a possible solution to this. The purpose of the SubstValue type is to support "compound" values in the Substitutions. For example I think what we want the Substitutions map to look like is something like this:
I'm not exactly sure what we would store under
::nom
as I still haven't had time to look into how alphaKanren works because I've been a bit busy trying to squash some pressing cKanren bugs. But perhaps you can see if this will work or needs to be augmented in some way?63a9805
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh, this is insightful, thanks. I'll think more about it. My first idea of storing the pis of suspensions in there doesn't quite work, since the same variable can have many suspensions, and they shouldn't unify.
BTW, I signed the CCA and sent it by snail mail today. It will probably arrive before we figure all this out ;-)