Advice for people learning Modern, Declarative Prolog from older texts

See: Wiki Discussion: Generating Cytoscape.js graphs with SWI-Prolog
Note that the code is just proof of concept code, it still has many ways to be improved.

Also check out code using pharse/2 in the SWI-Prolog repositories on GitHub. I know most of it is for parsing but some of it is for generating.


There are many noted in
The Craft of Prolog by Richard A O`Keefe (WorldCat)

One should read all of the forum post here and in the previous places this forum was hosted. I can’t remember them all but for a while it was on Google Groups.

Check out the SWI-Prolog packages.

Personally I don’t think of Prolog as a programming language but a modelling language for problem solving. I also consider about 2/3 of what is built-in to SWI-Prolog to be models for solving problems, e.g. constraints, DCGs, tabling, → (single sided unification), is/2, EDCGs, term rewriting, etc.


Yes. It never went very far.

There is a post on this site from some months back noting how to contribute pull request to the SWI-Prolog documentation that would be the best way to add such items. I can’t find the topic but I know that @Boris did some and should be able to point the way.

1 Like