title: Reference for Prolog Best Practices?
body: <p>Is there a (relatively) current reference for best practices in Prolog?  One suitable for giving to commercial Prolog developers who have not studied logic programming or advanced texts like "The Craft of Prolog"?</p>
  
  <p>There are plenty of general tutorials but the only one on best practices I could find was this one from 1994:</p>
  
  <p><a href="http://www.cs.auckland.ac.nz/~j-hamer/07.363/prolog-for-se.html" rel="nofollow noreferrer">http://www.cs.auckland.ac.nz/~j-hamer/07.363/prolog-for-se.html</a></p>
  
  <p>There's also the individual question on comp.lang.prolog or here like the following:</p>
  
  <p><a href="https://stackoverflow.com/questions/3014933/prolog-best-practice-checking-if-a-variable-is-already-bound">Prolog Best Practice: checking if a variable is already bound.</a> </p>
  
  <p>But nothing more comprehensive, current, and suitable to the commercial developer.</p>
  
  <p>This issue came up during an interview for a job that would require formal mentoring and code reviews for beginner to intermediate Prolog developers.  Working as an experienced Prolog contractor, I frequently advised other developers who had advanced knowledge of their product and its domain, but were self-taught or who had limited Prolog training.  But the mentoring was on an ad hoc basis, responding to their particular day-to-day issues.</p>
  
  <p>Anyway, I've been away from Prolog development for a while and the interviewers question got me thinking that there should be such a reference.  If there isn't one out there, I will likely create it myself if I get this job.</p>