| The aim of this research is to provide parallel and distributed
implementation of logic programming languages, both on massively parallel
architectures and network of workstations.
In particular, the focus is on logic programming languages where
processes synchronization is obtained through multi-head clauses rather
than streams. The resulting computational model is, in fact,
more suitable for distribution.
Then, the implementation of a logic language with
multi-head clauses on a Transputer-based architecture has been proposed
and discussed, and its porting on a network of Unix workstations is in progress.
In order to improve the unification mechanism in the distributed
implementation of logic programming languages,
the basic abstract machine for Prolog (the WAM) has been extended with new
instructions, where the level of copying of data structures can
be specified at compile time. Thus, when static analysis techniques
are applied, the optimal level of copying can be determined
for each data structure handled by the program. This level of copying
can be also
influenced from the features of the underlying architecture (e.g., time
for the sending of a message, etc.).
The distributed implementation of logic agents
grounded both on the blackboard and the object-oriented model has been also
discussed. |