I'm only eight chapters into it, but The Art of Prolog by Sterling and Shapiro has been quite good so far. It started with several chapters about logical & declarative programming, and is now getting into the Prolog language's implementation of it.
Also, there's http://learnprolognow.org/ , and there's also some interesting material about Prolog and unification in PAIP.
I'm not sure how directly useful Prolog is (and I'm expecting naysayers to come marching in any minute now), but Prolog/Horn clauses seem really handy as a notation. After working through some examples in the book, I have a much clearer idea of how the unification for H-M type inference is implemented. (Much like how thinking about text patterns became easier once I learned regular expressions.)
I had the honor of taking Programming Languages from Dr. Fisher in 1990 at CSU Pomona. He is an effective teacher and a real visionary. It was one of my favorite classes. Thanks Dr. Fisher, keep up the good work.
I liked Clocksin/Mellish's book that I used in school. I will always have a softspot for this language, even though I've never had any time in my career to actually use Prolog.
Also, there's http://learnprolognow.org/ , and there's also some interesting material about Prolog and unification in PAIP.
I'm not sure how directly useful Prolog is (and I'm expecting naysayers to come marching in any minute now), but Prolog/Horn clauses seem really handy as a notation. After working through some examples in the book, I have a much clearer idea of how the unification for H-M type inference is implemented. (Much like how thinking about text patterns became easier once I learned regular expressions.)