Abstract
Prolog has become a subject of much discussion of late. It has been suggested as the logical language for programming expert systems. A parallel variant is said to be the language of the Japanese 5th Generation Project. In this paper the standard Prolog language is defined and shown to be a restriction of Logic Programming. Several alternative schemes, which have been proposed for improving the performance of Prolog, are examined. Some schemes change the semantics of the language; these effects are discussed. All schemes have implications on the microarchitecture of the implementing engine; these implications are studied.
- 1 Clark, K., Gregory, S., "Parlog: Parallel Programming in Logic," 1-Apr-84, Imperial College of Science and Technology Department of Computing Research Report DOC 84/4.Google Scholar
- 2 Clocksin, W.F., Mellish, C.S., "Programming in Prolog," 1981 Springer-Verlag. Google Scholar
Digital Library
- 3 Conery, J.S., "The AND/OR Process Model for Parallel Interpretation of Logic Programs," 1-Jun-83, University of California Irvine Technical Report #204.Google Scholar
- 4 Hopcroft, J.E., Ullman, J.D., "Introduction to Automata Theory, Languages, and Computation," 1979 Addison- Wesley. Google Scholar
Digital Library
- 5 Mellish, C.S., "The Automatic Generation of Mode Declarations for Prolog Programs," 1-Aug-81, University of Edinburgh Dept. of AI Technical Report #163.Google Scholar
- 6 Naish, L., "An Introduction to MU-Prolog," 1-Jan-83, University of Melbourne Technical Report.Google Scholar
- 7 Nilsson, N.J., "Problem-Solving Methods in Artificial Intelligence," 1971 McGraw-Hill. Google Scholar
Digital Library
- 8 Ponder, C., "Prioritized Dynamic Search Control in Prolog," University of California Berkeley Internal Memo.Google Scholar
- 9 Taylor, S., Lowry, A., Maguire Jr, G.Q., Stolfo, S.J., "Logic Programming Using Parallel Associative Operations," 6-Feb- 84, 1984 International Symposium on Logic Programming.Google Scholar
- 10 Tick, E., Warren, D.H., "An Overlapped Prolog Processor," 1-Oct-83, SRI International Technical Report #308.Google Scholar
- 11 Shapiro, E.Y., "A Subset of Concurrent Prolog and its Interpreter," 1-Jan-83, Weizmann Institute of Science Technical Report.Google Scholar
- 12 Shapiro, E.Y., "Lecture Notes on Bagel: a Systolic Concurrent Prolog Machine," 1-Nov-83, ICOT Technical Memorandum #31.Google Scholar
- 13 Shapiro, E.Y., Takeuchi, A., "Object Oriented Programming in Concurrent Prolog," 1-Oct-83, ICOT Technical report.Google Scholar
- 14 Warren, D.H., "Implementing Prolog - Compiling Predicate Logic Programs," 1-May-77, University of Edinburgh Dept. of AI Technical Reports #39-40.Google Scholar
- 15 Wise, M.J., "A Parallel Prolog: the Construction of a Data-Driven Model," 15-Aug-82, Symposium on Lisp and Functional Programming. Google Scholar
Digital Library
Index Terms
Alternative proposals for implementing Prolog concurrently and implications regarding their respective microarchitectures
Recommendations
Alternative proposals for implementing Prolog concurrently and implications regarding their respective microarchitectures
MICRO 17: Proceedings of the 17th annual workshop on MicroprogrammingProlog has become a subject of much discussion of late. It has been suggested as the logical language for programming expert systems. A parallel variant is said to be the language of the Japanese 5th Generation Project. In this paper the standard ...
Using Prolog to implement a compiler for a parallel image processing language
ICIP '95: Proceedings of the 1995 International Conference on Image Processing (Vol. 1)-Volume 1 - Volume 1This paper describes the use of Prolog as an implementation language for a compiler for a parallel image processing language. The target machine for which code is generated is an abstract model for parallel image processing. The structure of the final ...
On implementing Prolog in functional programming
AbstractThis report surveys techniques for implementing the programming language Prolog. It focuses on explaining the procedural semantics of the language in terms of functional programming constructs. The techniquessuccess continuations andproof streams ...






Comments