Prolog'a Giriş

Bilgisayarlara bizim gibi karar verebileceği, bizim çıkarımlarımıza benzer aşamaları olan sonuçlara ulaşabileceği, kısaca yapay zeka ile ilgili uygulamalar yaptırabilmek için mantık programlama dilleri kullanabiliyoruz. Her ne kadar günümüzde bilgisayarlar zeka konusunda elimize su dökemese de bir çok problemi çözerken daha hızlı ve başarılı sonuçlara ulaşan programlar yazılabiliyor. Bu programları yazabilmemiz için matematiksel mantıka benzer süreçler kullandığımız diller var. Prolog(PROgrammation en LOGique-Fransızca) onlardan biri sadece. Bildirimsel programlama dili dediğimiz bu tür, geleneksel programlamada(yordamsal programlama) kullanılan dizili eylemlerden değil; gerçekler, kurallar ve bunlardan çıkarılan sonuçlardan oluşuyor. C, C++, Java, Pascal gibi dillerde programın adım adım ne yapması gerektiğini söylerken Prolog'un da içinde yer aldığı bildirimsel dillerde durumları bildirir ve programdan çözüm isteriz.


Bir Prolog kodu en genel haliyle üç bölüme ayrılır; PREDICATES dediğimiz kısımda gerçeklerin tanımını yapar, CLAUSES bölümünde tanımladığımız gerçeklere uygun kuralları belirtiriz. Daha sonra GOAL dediğimiz kısımda aradığımız çözümü verdiğimiz bilgilere dayanarak bulmasını sağlayacak soruları sorar ve sonuca varırız. Prolog'ta değişkenleri belirtebilmek için büyük harfle başlayan , sabitler için de küçük harf ile başlayan sözcükler kullanıyoruz.

Çoğunlukla programlama dillerinde ilk örnek olarak verilen:

Merhaba Dünya

%Bu "merhaba dünya" diyen prolog kodu

GOAL
write("Merhaba Dünya").

%Bu kod VISUAL PROLOG'ta yazıldı.
%write
VISUAL PROLOG'da tanımlı bir gerçek

Bağlantılar:

Prolog Öğretici
SWI Prolog
GNU Prolog
Visual Prolog

3 yorum:

Furkan dedi ki...
Bu yorum yazar tarafından silindi.
İlker Kalaycı dedi ki...

Merhabalar,
Evet, seni hatırladım Furkan. Amacım Prolog'u merak edenlere az da olsa bir katkıda bulunmak..Eğer yazdığım bu kısa yazı işine yarayacaksa sevinirim.
Görüşmek üzere..

TheBestNextTime dedi ki...

merhaba konuyu hortlatıcam ama merak ettiğim bi konu var oda prolog ta kod yazarken bu terimleri % , ( gibi işaretler ne anlam taşımaktadır bunlarla ilgili bir şablon varmı hangi simgeyi hangi kodu yazmakta kullanıcaz, visual prolog programını indirdim ama hiçbişey bilmiyorum sıfırdan başlayan biri için pek zor bu dil bizim gibi yeni başlayan acemiler için tamamen ütopya bu kardeşim biraz açık bi şekilde açıklama yapabilirmisin sana zahmet olmassa