I am curious about this. I must learn Prolog for my course, but the applications that I seen mostly are written using C++, C# or Java. Applications written by Prolog, to me is very very rare application.
So, I wonder how Prolog is used and implement the real-world application?
According to the Tiobe Software Index, Prolog is currently #36: between Haskell and FoxPro:
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
What's it used for?
I first heard of it with respect to Japan's (now defunct) "Fifth Generation" project:
http://en.wikipedia.org/wiki/Fifth_generation_computer
Frankly, I'm not really aware of anybody using Prolog for any serious commercial development.
SWI-Prolog website is served from... SWI-prolog, using just a small subset of the libraries available.
Well, it's not a commercial application, but it's rather real world.
Much effort was required to make the runtime able to perform 24x7 service (mainly garbage collection) and required performance scalability (among other multithreading).
Several libraries were developed driven by real world applications needs.
One of the notorious and in a way notable examples is Microsoft Windows NT OS network interface configuration code that involved a Small Prolog interpreter built in. Here is a link to the story written by David Hovel for Dr. Dobbs. (The often cited Microsoft Research link seems to be gone.)
Once Prolog was considered as THE language for a class of software systems called Expert Systems. These were interactive knowledge management systems often with a relational database backend.
In general rule-based programming, resolution and different automated reasoning systems are widely used beyond Prolog.
I once asked my supervisor a similar question, when he is giving us a Prological lecture.
And he told me that people do not really use prolog to implement a whole huge system. Instead, people write the main part with other language(which is more sane and trivial), and link it to a "decision procedure" or something written in Prolog.
Not sure about other Prolog implementation, we were using BProlog and it provides C/Java interface.