What the average hacker needs to know about Prolog is that it is not an imperative programming language. That is, it is nothing like C, or BASIC, or, quite likely, anything else you have come across.

If you are used to an imperative programming language, then writing something in Prolog is rather like trying to think with your brain inside out.

Too much time spent using Prolog, over the course of my final-year university project caused three incidents that I will not soon forget: