tau-prolog icon indicating copy to clipboard operation
tau-prolog copied to clipboard

Some CLP(X) for Tau Prolog? Is there dif/1 or freeze/1 already?

Open ghost opened this issue 5 years ago • 6 comments

Hi,

Is there dif/1 or freeze/1 already for Tau Prolog? How would a derivation tree visualization look like? I can only contribute in that I have a new Prolog trampolin design, which could be useful:

with_unify https://gist.github.com/jburse/987d86bf7751887785140ab0bb6ad6b3#gistcomment-2859497

Basically during the resulting proving step, you can check a suspension queue, and if the queue is non-empty, you can first work the goals there instead the body, by prepending the suspension queue to the body.

Have Fun!

ghost avatar Mar 11 '19 23:03 ghost

Not yet. I'm currently working on the IO builtin predicates for both browser and Node.js (#41, #59). Thanks for the suggestion, I have CLP on my TODO list.

jariazavalverde avatar Mar 12 '19 10:03 jariazavalverde

It might be worthwhile to consider clp(BNR); seems very powerful and works for boolean, integers and reals :-)

JeanChristopheRohner avatar Aug 29 '20 10:08 JeanChristopheRohner

Has this changed at all? Is CLP in some form possible yet?

lf94 avatar Mar 22 '22 04:03 lf94

No. I've been working on a branch to incorporate attributed variables, but I don't know when I'll get back to it.

jariazavalverde avatar Mar 22 '22 18:03 jariazavalverde

Thank you for your reply! I'm using tau-prolog in my project https://github.com/lf94/paizo-prolog but I've realized now it'd be nice to have this for constraint problems. I'm considering a SWI-Prolog WASM build, but would gladly switch back to tau-prolog. It's an excellent project!

lf94 avatar Mar 22 '22 18:03 lf94

Hi, another onlooker is coming to check for any progress on this. IMO this would be a game-changer, tbh, for web development.

gabrielmontagne avatar Mar 16 '23 10:03 gabrielmontagne