Prolog programming books: Difference between revisions

From This Prolog Life
Jump to navigation Jump to search
John (talk | contribs)
Created page with "__NOTOC__ Out of the many Prolog programming books that I have read, I consider these to be the best. == Starting Out == Prolog is a deep subject, rather than a broad one, s..."
 
John (talk | contribs)
Simplify the first line.
 
(19 intermediate revisions by the same user not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
Out of the many Prolog programming books that I have read, I consider these to be the best.
I consider these to be the best Prolog programming books.


== Starting Out ==
== Starting Out ==
Line 6: Line 6:
Prolog is a deep subject, rather than a broad one, so it is best studied in stages.
Prolog is a deep subject, rather than a broad one, so it is best studied in stages.


Clocksin & Mellish's [http://www.amazon.co.uk/exec/obidos/ASIN/3540006788/bindingtimeli-21 Programming in Prolog] is the definitive introductory text on Prolog. Most importantly, it will help you to start programming straight away.
Clocksin & Mellish's [https://link.springer.com/book/10.1007/978-3-642-55481-0 Programming in Prolog] is the definitive introductory text on Prolog. Most importantly, it will help you to start programming straight away.


== More Advanced Applications ==
== More Advanced Applications ==


I regard Peter Flach's [http://www.amazon.co.uk/exec/obidos/ASIN/0471941522/bindingtimeli-21 Simply Logical: Intelligent Reasoning by Example] as the best advanced text currently available. It deals with both theoretical and practical aspects of logic programming but doesn't assume prior knowledge beyond that you will have gained from "Programming in Prolog".
I regard Peter Flach's [https://book.simply-logical.space/src/simply-logical.html Simply Logical: Intelligent Reasoning by Example] as the best advanced text. It deals with both theoretical and practical aspects of logic programming but doesn't assume prior knowledge beyond that you will have gained from "Programming in Prolog".
 
You can download the programs in the book, and the book as a <abbr title="Portable Document Format">PDF</abbr> file, from the [http://www.cs.bris.ac.uk/~flach/SimplyLogical.html Simply Logical page at Bristol University].


== The Last Word ==
== The Last Word ==


Robert Kowalski's classic [http://www.amazon.co.uk/exec/obidos/ASIN/0444003681/bindingtimeli-21 Logic for Problem Solving] is essential reading for Prolog programmers.
Robert Kowalski's classic [https://search.worldcat.org/title/710744783 Logic for Problem Solving] is essential reading
 
for Prolog programmers. [https://search.worldcat.org/title/958465391 Logic for Problem Solving, Revisited] is a more recent, revised edition.
The book has been scanned into PDF format and can be downloaded from [http://www.doc.ic.ac.uk/~rak/ Robert Kowalski's homepage].


A recent revised edition, [http://www.amazon.co.uk/exec/obidos/ASIN/3837036294/bindingtimeli-21 Logic for Problem Solving, Revisited], is available.
The original book has been scanned into PDF format and can be downloaded from [https://www.doc.ic.ac.uk/~rak/ Robert Kowalski's homepage].


== Getting Technical ==
== Getting Technical ==
Performance and memory utilisation become important when Prolog is used to solve complex problems.
Performance and memory utilization become important when Prolog is used to solve complex problems.


David Harel's [http://www.amazon.co.uk/exec/obidos/ASIN/0201504014/bindingtimeli-21 Algorithmics] is a very accessible treatment of program behaviour. It isn't tied to one programming language, and the techniques described are readily applicable to Prolog programs.
David Harel's [https://www.weizmann.ac.il/math/harel/algorithmics-spirit-computing Algorithmics] is a very accessible treatment of program behaviour. It isn't tied to one programming language and the techniques described are readily applicable to Prolog programs.


Richard O'Keefe's [http://www.amazon.co.uk/exec/obidos/ASIN/0262150395/bindingtimeli-21 The Craft of Prolog] is a superb exposition of the techniques that can be employed to work ''with'' Prolog, rather than fighting against it, and the rationale behind them.
Richard O'Keefe's [https://mitpress.mit.edu/9780262512275/the-craft-of-prolog/ The Craft of Prolog] is a superb exposition of the techniques that can be employed to work ''with'' Prolog, rather than fighting against it, and the rationale behind them.

Latest revision as of 16:08, 11 February 2026

I consider these to be the best Prolog programming books.

Starting Out

Prolog is a deep subject, rather than a broad one, so it is best studied in stages.

Clocksin & Mellish's Programming in Prolog is the definitive introductory text on Prolog. Most importantly, it will help you to start programming straight away.

More Advanced Applications

I regard Peter Flach's Simply Logical: Intelligent Reasoning by Example as the best advanced text. It deals with both theoretical and practical aspects of logic programming but doesn't assume prior knowledge beyond that you will have gained from "Programming in Prolog".

The Last Word

Robert Kowalski's classic Logic for Problem Solving is essential reading for Prolog programmers. Logic for Problem Solving, Revisited is a more recent, revised edition.

The original book has been scanned into PDF format and can be downloaded from Robert Kowalski's homepage.

Getting Technical

Performance and memory utilization become important when Prolog is used to solve complex problems.

David Harel's Algorithmics is a very accessible treatment of program behaviour. It isn't tied to one programming language and the techniques described are readily applicable to Prolog programs.

Richard O'Keefe's The Craft of Prolog is a superb exposition of the techniques that can be employed to work with Prolog, rather than fighting against it, and the rationale behind them.