On Sunday, August 20, 2017 at 6:28:59 AM UTC-4, Jonas Kölker wrote:
>
> You've made some good observations.  I haven't thought of this in terms of 
>> threshold reads before, but what you're describing sounds like the 
>> implementation of deferred goals in some MK variants.
>>
>> Deferred goals are resumed when the variables they depend on become 
>> known, which should be able to support dynamic interleaving, as in your 
>> interpreter/type-inferencer example.
>>
>
> Yep, that sounds like a threshold read. What does "known" mean? Fully 
> ground, or just non-fresh?
>

As soon as any information becomes known (so symbolo and numbero qualify 
for this case), a goal is resumed.  If the new information turns out to be 
insufficient, the goal may suspend itself again right away.  In a lot of 
cases, it will use the new information to perform some simplification 
before re-suspending.  You could say there are implicit tripwires.
 

> It's not working well enough to be useful yet.
>>
>
> Interesting; what are its shortcomings? 
>

It seems to be due to bad implementation on my part.  I haven't had time to 
dig in to figure out why, but the scheduling of goals isn't distributed in 
the way we expected.  Once this is fixed, I imagine there won't be any 
serious shortcomings.  It will take a while to get back to this, but I'll 
let you know when I find out.

-- 
You received this message because you are subscribed to the Google Groups 
"minikanren" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/minikanren.
For more options, visit https://groups.google.com/d/optout.

Reply via email to