Hi Ben,

It seems analogous to what is done in Haskell to support backtracking 
> and Prolog-type cut and so forth.  There one does use an "external" 
> system to manage historical records, but this external system is 
> hidden behind the monadic interface, 
>
> http://okmij.org/ftp/papers/LogicT.pdf 
>
> http://hackage.haskell.org/package/logict 
>
> This is all using continuations behind the scenes, and related to some 
> discussions Linas and I had earlier about making Atomspace schema 
> processing support continuations.   If one is manipulating 
> continuations rather than just functions, then maintaining and 
> manipulating the external computation graph is "just" an efficient 
> shorthand for computing what the continuations denote... 
>

Yes if all calculations was in Scheme then it would be possible, but some 
value manipulation logic is implemented in bare C++ and this logic is 
spreaded over atomspace code so we cannot capture it easily. It is the 
reason why we need passing computation graph from GroundedPredicateNodes 
through custom Atom wrappers.
 

-- 
You received this message because you are subscribed to the Google Groups 
"opencog" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to opencog+unsubscr...@googlegroups.com.
To post to this group, send email to opencog@googlegroups.com.
Visit this group at https://groups.google.com/group/opencog.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/opencog/e42f3495-e6ed-4ad2-a2bb-d52eb5032051%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to