It seems like such a powerful paradigm, but it doesn't get nearly the press these days that OO and functional programming have. What could be the reason for this?
I wonder if we're due for a young language to rejuvenate Prolog the way Clojure has done for Lisp.
* http://vanemden.wordpress.com/2010/08/21/who-killed-prolog/ - Discusses how closely Prolog became tied to the rise and fall of the Japanese Fifth-Generation Computer Systems project
* http://vanemden.wordpress.com/2010/08/31/the-fatal-choice/ - Argues that Prolog was wrong-footed by the increased focus in industry on data structures and interfaces, rather than program logic. Prolog proposes a better way of doing program logic, but has little to say about data structures or encapsulation. (The article proposes how that might be fixed, too.)
* http://synthese.wordpress.com/2010/08/21/prologs-death/ - Argues that the difficulty of debugging and reasoning about Prolog execution, and its slow execution (especially in the early days), are bigger factors than many Prolog advocates admit.
* http://www.kmjn.org/notes/prolog_lost_steam.html - Argues that Prolog's low-hanging fruit got poached. In the 1970s it was the only real declarative-programming game in town, but over the next few decades a bunch of more specialized declarative languages succeeded in various niches, reducing Prolog's uniqueness and appeal.