Zack: I don't get it. Leonard: A dolphin might. - The Big Bang Theory, Season 4 Episode 10
by Forrest Sheng Bao http://fsbao.net
From a practical perspective, I would like to admit that the reason logic programming isn't popular (as popular as empirical programming) is because it involves a lot of math on logics whereas not many people are trained on logics.
Today, I came across a paper, Logic Programming with Defaults and Argumentation Theories at http://www.cs.sunysb.edu/~kifer/TechReports/LPDA09.pdf It was published in 2009, at ICLP, the top conference on logic programming.
A modern development in logic programming is the introduction of default negation, which brings in nonmonotonicity and can facilitate common-sense reasoning. But this paper says:
"default negation is too low-level a concept to be safely entrusted to a knowledge engineer who is not a trained logician."
Oops! On top of that, the authors continue:
" Anecdotal evidence suggests that logicians are also not doing much better when it comes to modeling concrete application domains using default negation as a sole tool."
I guess we need someone or someones to evangelize logical programming to people who may be in need of it, in a made-easy way.