2.1 library(pengines): Pengines: Web Logic Programming Made Easy
AllApplicationManualNameSummaryHelp

  • 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
            • thread_pool:create_pool/1
            • 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
Availability::- use_module(library(pengines)).(can be autoloaded)
Source[det]pengine_event_loop(:Closure, +Options)
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]