- ext
- pengines
- pengines.pl -- Pengines: Web Logic Programming Made Easy
- create_pool/1
- 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_done/0
- prepare_module/3
- prepare_goal/3
- not_sandboxed/2
- pengine_pull_response/2
- pengine_input/2
- pengine_respond/3
- pengine_event_loop/2
- pengine_rpc/2
- pengine_rpc/3
- prompt/3
- output/2
- portray_blob/2
- write_result/3
- add_error_details/3
- event_to_json/3
- authentication_hook/3
- pengine_user/1
- pengines_io.pl -- Provide Prolog I/O for HTML clients
- term_to_json.pl
- pengines.pl -- Pengines: Web Logic Programming Made Easy
- pengines
- pengine_event_loop(:Closure, +Options) is det
- Starts an event loop accepting event terms sent to the current pengine
or thread. For each such event E, calls
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]