Creates a new pengine. Valid options are:
- id(-ID)
- ID gets instantiated to the id of the created pengine. ID is
atomic.
- alias(+Name)
- The pengine is named Name (an atom). A slave pengine (child) can
subsequently be referred to by this name.
- application(+Application)
- Application in which the pengine runs. See pengine_application/1.
- server(+URL)
- The pengine will run in (and in the Prolog context of) the pengine
server located at URL.
- src_list(+List_of_clauses)
- Inject a list of Prolog clauses into the pengine.
- src_text(+Atom_or_string)
- Inject the clauses specified by a source text into the pengine.
- src_url(+URL)
- Inject the clauses specified in the file located at URL into the
pengine.
- src_predicates(+List)
- Send the local predicates denoted by List to the remote pengine.
List is a list of predicate indicators.
Remaining options are passed to http_open/3 (meaningful only for
non-local pengines) and thread_create/3. Note that for thread_create/3
only options changing the stack-sizes can be used. In particular, do not
pass the detached or alias options..
Successful creation of a pengine will return an event term of the
following form:
- create(ID, Term)
- ID is the id of the pengine that was created.
Term is not used at the moment.
An error will be returned if the pengine could not be created:
- error(ID, Term)
- ID is invalid, since no pengine was created.
Term is the exception's error term.