- Documentation
- Reference manual
- Packages
- Pengines: Web Logic Programming Made Easy
- Pengine libraries
- library(pengines): Pengines: Web Logic Programming Made Easy
- pengine_create/1
- pengine_ask/3
- pengine_next/2
- pengine_stop/2
- pengine_abort/1
- pengine_destroy/1
- pengine_destroy/2
- pengine_application/1
- current_pengine_application/1
- pengine_property/2
- pengine_output/1
- pengine_debug/2
- pengine_pull_response/2
- pengine_input/2
- pengine_respond/3
- pengine_event_loop/2
- pengine_rpc/2
- pengine_rpc/3
- pengine_user/1
- library(pengines): Pengines: Web Logic Programming Made Easy
- Pengine libraries
- Pengines: Web Logic Programming Made Easy
Availability:
:- use_module(library(pengines)).
- chunk(+Count)
- Modify the chunk-size to Count before asking the next set of solutions.
Remaining options are passed to pengine_send/3. The result of re-executing the current goal is returned to the caller's message queue in the form of event terms.
- success(ID, Terms, More)
- ID is the id of the pengine that succeeded in finding yet
another solution to the query. Terms is a list holding
instantiations of
Template. More is either
true
orfalse
, indicating whether we can expect the pengine to be able to return more solutions or not, would we call pengine_next/2. - failure(ID)
- ID is the id of the pengine that failed for lack of more solutions.
- error(ID, Term)
- ID is the id of the pengine throwing the exception. Term is the exception's error term.
- output(ID, Term)
- ID is the id of a pengine running the query that called pengine_output/1. Term is the term that was passed in the first argument of pengine_output/1 when it was called.
- prompt(ID, Term)
- ID is the id of the pengine that called pengine_input/2 and Term is the prompt.
Defined in terms of pengine_send/3, as follows:
pengine_next(ID, Options) :- pengine_send(ID, next, Options).