Section "theatre"
The Dogelog player facilitates calling Prolog predicates from within
the host language. The host calls perform() and perform_async() are
usually called with a ground term. The client cre-ates via the
ground term using the host language data types and the Prolog term
constructors. The host call post() sends a signal and interrupts the
“main” task.
The following theatre calls are provided:
- post(M): (host language)
- Post the message M to the Prolog interpreter.
- perform(G): (host language)
- Run the goal G once without retaining variable bindings,
returning success, failure and exceptions. The goal is run with
auto-yield disabled and promises are not accepted.
- perform_async(G): (host language)
- Run the goal G once without retaining variable bindings,
returning success, failure and exceptions. The goal is run with
auto-yield enabled and promises are accepted.
Kommentare