I have a connect4 game implementation on the prolog. The get_next_board/2
predicate works fine in the prolog console.
But when I want to get the result using the session
, it just waits for a long time for a response that never comes.
session.consult
and session.query
pass successfully unlike session.answer
.
Code:
const session = window.pl.create();
// Consult
session.consult(program, {
success: function() {
console.log('success consult');
// Query
session.query(
`get_next_board(
[['1',_,_,_,_,_],
[_,_,_,_,_,_],
[_,_,_,_,_,_],
[_,_,_,_,_,_],
[_,_,_,_,_,_],
[_,_,_,_,_,_],
[_,_,_,_,_,_]],
X).`,
{
success: function(goal) {
console.log('success query');
console.log(goal);
// Answers
session.answer(x => {
console.log('success answer');
console.log(window.pl.format_answer(x));
});
},
error: function(err) {
console.log(err);
}
}
);
},
error: function(err) { /* Error parsing program */
}
});