برولوغ
البرولوغ (Prolog) هي لغة برمجة منطقية. الاسم مأخوذ من الفرنسية programmation en logique (برمجة المنطق)، تم اختراع اللغة بواسطة ألين كولميرايور حوالي العام 1972. كانت محاولة لجعل لغة البرمجة قادرة على استخدام عبارات منطقية بدل أن تكون تعليمات محددة تلقن إلى الحاسوب. صممت اللغة أساسًا لتستخدام في عمل برامج معالجة اللغات الطبيعية.
تستخدم لغة البرولوغ في العديد من برامج الذكاء الاصطناعي وبرامج معالجة اللغات الطبيعبة. عبارات وقواعد اللغة تعبتر بسيطة جداً وواضحة (يتم كتابة البرنامج بالكامل باستخدام الحقائق والقواعد). العديد من الباحثين الذين يقودون تطبيقات حديثة للبرلوغ التي جاءت نتيجة استخدام نسخات مختلفة من البرلوغ كنواة في مشاريع أنظمة حاسوب الجيل الخامس (fifth generation computer systems اختصارًا FGCS).
الحقائق Facts
تختلف طريقة البرمجة في برلوغ عن اللغات التقليدية. في برلوغ يتم كتابة الحقائق (Facts) والقواعد (Rules) في قاعدة بيانات، ثم يتم كتابة أستفسارت queries من قاعدة البيانات. الحقية عبارة عن سند (predicate) (الوحدة الأساسية للبرلوغ). يتكون السند من رأس (head) وعدد من الوسائط (arguments). مثال
cat(tom).
في هذا المثال نقول بباسطة أن هناك توم 'tom' وهو قط 'cat'،بتعبير أدق 'cat' هو رأس (head) السند و'tom' هو وسيطة (argument). هنا عدد من الأستفسارات التي يمكن سؤالها بناء على هذه الخقيقة:
هل توم قط (is tom a cat)؟
?- cat(tom). yes.
ببساطة هنا نسأل إذا توم قط ويجيبنا برلوغ بنعم (yes).
ماهي الأشياء التي هي قط (what things are cats)؟
?- cat(X). X = tom; non
القواعد Rules
أن النوع الثاني من العبارت في برلوغ هي القواعد:
father(X,Y) :- parent(X,Y),male(X).
أنواع المعلومات Data types
لاتحتوي لغة البرلوغ على أنواع معلومات (Data types) تقليدية كلغات البرمجة التقليدية الأخرى. ولكن على عناصر تركيبية (lexical elements).
الذرات Atoms
يعرف النص الثابت في برلوغ بمعنى الذرات Atoms. الذرة عبارة عن سلسلة من الحروف، الأرقام ورمز الشارحة-السفلية (_) (underscores) على أن يبدأ النص بحرف أنجليزي صغير (lower-case). عادة، عادة إذا كان هناك رمز ليس بحرف أو رقم فأنه يوضع بين (علامة التنصيص الأحادية) (مثال '+' يعتبر ذرة، في حين + يعتبر معامل)asxaxascsadcvsdcddddd
الأرقام
معظم نسخ البرلوغ لاتميز بين الأعداد الصحيحة والأعداد الحقيقية.
المتغيرات Variables
يعبر المتغيرات Variables عن نص يتكون من الحروف، الأرقام ورمز شرطة-السفلية (_) على أن يبدأ النص بحرف إنجليزي كبير (upper-case). على عكس اللغات القولية (imperative programming languages) في بيئة البرلوغ المتغير ليس مكان في الذاكرة (مستوعب) يمكن تخزين القيم فيه. تصرف المتغيرات يتبع النمط لأيجاد القيمة.
|
an:Prolog
ast:Prolog
bat-smg:Prolog
bg:Пролог (език за програмиране)
ca:Prolog
cs:Prolog (programovací jazyk)
da:Prolog (programmeringssprog)
de:Prolog (Programmiersprache)
el:Prolog
Prolog]]
eo:Prolog
es:Prolog
et:Prolog
fa:پرولوگ
fi:Prolog
fr:Prolog
gl:Prolog
he:פרולוג (שפת תכנות)
hu:Prolog
id:Prolog
io:Prolog
is:Prolog
it:Prolog
ja:Prolog
jbo:prolog
ko:프롤로그
lt:Prolog
ms:Prolog
nl:Prolog
no:Prolog (programmeringsspråk)
pdc:Prolog
pl:Prolog (język programowania)
pt:Prolog
ro:Prolog
ru:Пролог (язык программирования)
rue:Пролоґ (язык проґрамованя)
sk:Prolog
sl:Prolog
sv:Prolog (programspråk)
ta:புரொலாக்
tg:Пролог (забони барноманависӣ)
th:ภาษาโปรล็อก
tr:Prolog
uk:Пролог (мова програмування)
yo:Prolog
zh:Prolog