Question: 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?

Answer: 
* **Microsoft Windows NT Networking Installation and Configuration applet**

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](http://www.drdobbs.com/cpp/184409294) to the story written by David Hovel for Dr. Dobbs. (*The often cited Microsoft Research link seems to be gone.*)

* **Expert systems**

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.

* **Beyond Prolog**

In general rule-based programming, resolution and different automated reasoning systems are widely used beyond Prolog.
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.