- 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_self/1
- 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)).
ignore(call(Closure, E))
.
A closure thus acts as a handler for the event. Some events are
also treated specially:
- create(ID, Term)
- The ID is placed in a list of active pengines.
- destroy(ID)
- The ID is removed from the list of active pengines. When the last pengine ID is removed, the loop terminates.
- output(ID, Term)
- The predicate pengine_pull_response/2 is called.
Valid options are:
- autoforward(+To)
- Forwards received event terms to slaves. To is either
all
,all_but_sender
or a Prolog list of NameOrIDs. [not yet implemented]