From the hub, written by: "Robert Laing"

Tips on planning, documenting, and testing a SWI-Prolog project

In the process of developing a fairly large SWI-Prolog project, I've developed some experience at using PlDoc — which actually goes beyond being an automated documentation system, doubling as an integrated development environment — and PlUnit, which I'll share here.


How to write a compiler or interpreter in Prolog

This post is external to PrologHub

An example of using Prolog's definite clause grammar to write a compiler for a Pascal-like programing language. The example is taken from the open access textbook: "The Art of Prolog".


Game tree tutorial

This post is external to PrologHub

An example of what computer science textbooks call "adversarial search" using the minimax and alpha-beta theorems to create an AI game player written in Prolog.


Graph Traversal for Problem Solving

This post is external to PrologHub

An example of using depth first and breadth first searches (written to be nearly identical to highlight the subtle difference between a stack and a queue) to solve three common puzzles commonly used as examples in AI textbooks.


Various ways to iterate in Prolog

This post is external to PrologHub

This is a list of simple examples, mainly created for my own reference, on the numerous ways of list processing in Prolog. My original title was six ways to iterate in Prolog, but it's reached 11 and still counting.


Writing a blog using SWI Prolog

This post is external to PrologHub

I'm in the process of re-implementing a course given by Reddid founder Steve Huffman via Udacity a few years ago, using SWI Prolog hooked to Postgresql. My tutorial is about half way done, which is far enough to be useful to anyone wanting some simple examples of how to use SWI Prolog for web development.