The Basic Andorra Model is a way to execute definite clause programs that allows dependent and-parallelism to be exploited transparently. It also supports nice programming techniques for search programs. The idea is to first reduce all goals that match at most one clause. When no such goal exists, any goal (e.g., the left-most) may be chosen. The BAM was proposed by David H. D. Warren, and his group at Bristol has developed an AND-OR parallel implementation called Andorra-I, which also supports full Prolog. See, for example, Seif Haridi and Per Brand, "Andorra Prolog, an integration of Prolog and committed choice languages", in Proceedings of the FGCS 1988, ICOT, Tokyo, 1988. Vitor Santos Costa, David H. D. Warren, and Rong Yang, "Two papers on the Andorra-I engine and preprocessor", in Proceedings of the 8th ICLP. MIT Press, 1991. Steve Gregory and Rong Yang, "Parallel Constraint Solving in Andorra-I", in Proceedings of FGCS'92. ICOT, Tokyo, 1992. AKL (Andorra Kernel Language) is a concurrent constraint programming language that supports both Prolog-style programming and committed choice programming. Its control of don't-know nondeterminism is based on the Andorra model, which has been generalised to also deal with nondeterminism encapsulated in guards and aggregates (such as bagof) in a concurrent setting. See, for example, Sverker Janson and Seif Haridi, "Programming Paradigms of the Andorra Kernel Language", in Proceedings of ILPS'91. MIT Press, 1991. Torkel Franzen, "Logical Aspects of the Andorra Kernel Language", SICS Research Report R91:12, Swedish Institute of Computer Science, 1991. Torkel Franzen, Seif Haridi, and Sverker Janson, "An Overview of the Andorra Kernel Language", In LNAI (LNCS) 596, Springer-Verlag, 1992. Sverker Janson, Johan Montelius, and Seif Haridi, "Ports for Objects in Concurrent Logic Programs", in Research Directions in Concurrent Object-Oriented Programming, MIT Press, 1993 (forthcoming). The above papers on AKL are available by anonymous ftp from sics.se:/pub/ccp/papers/ An (as yet non-released) prototype implementation of AKL is available for research purposes (contact sverker@sics.se).Go Back Up