Return to CLIP Main Page
Next: Using Parallelism: Examples
Up: Document: distrib_imperial
Previous: Distributed Teams of Workers
- Objective: express (independent) And-parallelism, concurrency
(dependent And-Parallelism), and fairness
- Independent And-Parallelism:
- A \&> H - sends out goal A, returns in
H a handler
- H <& - gets results of goal pointed by
H, or executes it
- A & B - performs a parallel ``fork'' of
A and B, waits for the execution of both to finish
- Last one can be implemented using the other two:
A & B :- B \&> H, call(A), H <& .
- The bindings made in the shared variables are not guaranteed to
be seen until the threads join
- Full support for backtracking
- Concurrency:
- A & - Sends out goal A, bindings
in the variables of A (tells) will be exported to other
workers sharing them
- A && - ``Fair'' version of the
&/1 operator: if there is no idle worker, it creates one
to execute A (``threads'')
- wait(X) - Suspends the execution until X is
bound (also, d_wait(X))
- ask(C) - Suspends the execution until the
constraint C
is satisfied
- A @ Id - Placement operator: goal A is to
be executed on worker Id (which may be remote).
<herme@fi.upm.es>-< webmaster@clip.dia.fi.upm.es>
Last updated on Mon Mar 31 21:20:55 MET DST 1997