Title: The Prolog Language
1The Prolog Language
- by Piyabut Thavilthicakul
- 49540552
2When the language first designed?
- Prolog first designed in very early 1970s.
- The first Prolog interpreter was developed in
1972.
3What were goals and purpose of Prolog?
- Prolog designed to be a logic programming
language that use declarative semantics.
4What kind of problem domain was Prolog intended
for?
- Prolog intended for use in Artificial
Intelligence domains. - For example
- Natural Language Processing
- Intelligent database
5Who were the envisioned users?
- Software Engineers
- Mathematicians
- Computer Scientists
- Linguistics
- Others that using logic
6What are some main features or distinctive
features of the Prolog?
- Method for specifying predicate calculus
propositions and an implementation of a
restricted from of resolution.
7Who designed the Prolog language?
- Prolog designed by Alian Colmerauer and Phillippe
Roussel with some assistance from Robert Kowalski.
8How successful was the Prolog?
- Fifth Generation Computer Systems project (FGCS)
chose Prolog for develop the project but later it
ran into difficulty because at that time Prolog
did not support concurrency.
9How widely of the Prolog used today?
- Prolog is not widely used because it designed to
use in a few small areas of application. - There are several Prolog IDE and compiler.
- Visual-Prolog is commercial Prolog IDE but it
also has Personal Edition for free. - SWI-Prolog is free Prolog IDE widely use in
research and education. - GNU Prolog is free Prolog compiler supports many
operating system.
10How to perform some numerical computation in
Prolog?
- To
- F is 310.// return
- F 30
- To
- F is 310.
- // return
- F 13
11How to input and output different kinds of data,
such as integers, floating pt and String?
- To input an integer
- read(X).
- 10.
- X10 // result
- To input a floating pt
- read(X).
- 4.000.
- X4.0 // result
- To input a string
- read(X).
- Hello, A Where are u?.
- // result
- XHello, A Where are u?
12How to write and invoke a function or procedure?
- // factorial function
- factorial(0,1).
- factorial(N,F) -
- Ngt0,
- N1 is N-1,
- factorial(N1,F1),
- F is N F1.
- // using a factorial function to find what is
factorial of 3. - ?- factorial(3,W).
- // return
- W6
13References
- Book Concepts of Programming Languages by Robert
W. Sebesta. - Wiki http//en.wikipedia.org/wiki/Prolog
- http//www.csupomona.edu/jrfisher/www/prolog_tuto
rial/contents.html