I'm looking for some advice how to get started with Logic programming, and I am really enjoying working through the Scheme book "Structure and Interpretation of Computer Programs." Is there a similar book that is geared toward Prolog? Or, if there is a better language to study than Prolog for Logic programming I am interested in hearing your opinions on that as well.

  • 1
    Note that SICP has a section in which a declarative language interpreter is described and implemented. Their description of unification is the best I've seen. Although the syntax is very different, the declarative language described is very close to Prolog semantically.
    – Macneil
    Apr 24, 2011 at 12:34

3 Answers 3


"The Art Of Prolog" by Leon Sterling & Ehud Shapiro is one of the best books about computer programming I've ever read.

  • 1
    Damn straight, Skippy. The best books on programming I've ever read read differently every time as I grow as a developer. This is one such book. Apr 24, 2011 at 12:57

Prolog and The Art of Prolog are hard to beat in this regard.

A possible alternative - being a bit closer in theme and technique to Scheme/SiCP than to Prolog/Art of Prolog - is Mozart/Oz with the the book Concepts, Techniques, and Models of Computer Programming.

Apart from Oz other alternative languages to Prolog are Curry which sits right between Haskell and Prolog and AliceML which is basically a ML variant of Oz (and could be used as such with above mentioned CTM). Curry has AFAIK no equivalent introductory text.


A Prolog book I like a lot is the one by Richard O'Keefe, The Craft of Prolog. It is out of print, so try for a library copy. If you find it useful as a reference text, Amazon usually has used copies for sale.

Edit: Actually it seems only the hardback edition is out of print, and Amazon has some new paperback copies for sale.

Not the answer you're looking for? Browse other questions tagged or ask your own question.