Prolog - the language and its implementation compared with Lisp

David H D Warren, Luis M. Pereira, Fernando Pereira
1977 Proceedings of the 1977 symposium on Artificial intelligence and programming languages -  
Prolog is a Simple but powerful programming language founded on symbolic logic. The basic computational mechanism is a pattern matching process ("unification") operating on general record structures ("terms" of logic). We briefly review the language and compare it especially with pure Lisp. The remainder of the paper discusses techniques for implementing Prolog efficiently; in particular we describe how to compile the patterns involved in the matching process. These techniques are as
more » ... d in our DECsystem-lO Prolog compiler (written in Prolog). The code it generates is comparable in speed with that produced by existing DECIO Lisp compilers. We argue that pattern matching is a better method for expressing operations on structured data than conventional selectors and constructors -both for the user and for the implementor.
doi:10.1145/800228.806939 fatcat:pmuggpyy3feihpfkbm5o4cribe