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: 
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](http://www.swi-prolog.org/).

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.
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.