لغة Lisp " بحث علمى "

الناقل : elmasry | الكاتب الأصلى : Handsome | المصدر : www.arabs2day.ws

السلام عليكم ورحمة الله وبركاته


المصطلح Lisp

المصطلح-عربي : ليسب

تفسير المصطلح
هي اختصار لكلمة List Processing أو العمليات على القوائم، lisp هي لغة برمجة صممت بغرض تسهيل تشكيل البيانات، وهي أشهر لغات الذكاء الاصطناعي وأقدمها وأقواها.

في lisp جميع العمليات الحسابية تمثل كدوال بمتغيرات، هذه المتغيرات من الممكن ان تكون دوال اخرى أو مجرد بيانات أو سجلات بيانات، كذلك يمكن في هذه اللغة التعامل مع التعابير الرمزية بدلاً من الأعداد بما يتناسب مع متطلبات الذكاء الاصطناعي.


مقدمــــــــــــــــــــــــــــــــــــــة:

لغة Lisp من أشهر اللغات المستخدمة لكتابة تطبيقات وبرامج الذكاء الاصطناعي، حيث أن 90% من برامج وتطبيقات الذكاء الاصطناعي الموجودة حاليا تم صناعتها باستخدام لغة Lisp .

Common Lisp ماهي إلا نسخة Version قياسية وشائعة جدا من لغة Lisp.



مميزات لغة Common Lisp:

1- يتم ترجمة الكود سطرا سطرا باستخدام المفسر Interpreter في الجزء Listener من البرنامج، بينما يتم عمل تقييم وتقدير Evaluation للكود ككل وإظهار الأخطاء مرة واحدة بعد قراءة جميع أسطر الكود في المحرر Text Editor الموجود في البرنامج.

2- لغة Lisp هي لغة إجرائية Procedural أي أن الكود يعكس الخوارزم Algorithm مباشرة وبالتالي فإنه يكون متسلسل ومتتالي تماما كالخوارزم أو خريطة التدفق Flowchart التي يمثلها.
وبالرغم من أن هذه الطريقة تعد قديمة في مقابل اللغات الحديثة كالجافا والسي شارب والتي تستخدم تقنية البرمجة الشيئية Object Oriented Programming ، إلا أن جميع لغات الذكاء الاصطناعي لا تزال تستخدم الطريقة القديمة لأنها تعكس بوضوح الخوارزم مما يجعل الكود أكثر وضوحا.

3- تعتمد هذه اللغة بشكل رئيسي على استخدام الدوال functions وهي على قسمين:

دوال معرفة ومبنية مسبقا داخل اللغة Built-in Functions ، وهي كثيرة جدا، وتعتبر من أفضل الدوال المبنية داخل لغات البرمجة الأخرى، وسنتعرف عليها جميعا وبالتفصيل في الدروس القادمة بإذن الله.

دوال يقوم بتعريفها المبرمج User-defined Functions ، وسنتعرف على كيفية تعريف أي دالة في لغة Lisp وكيفية الاحتفاظ بها لاستخدامها في التطبيقات التي تصنعها في الدروس القادمة بإذن الله..



وبالتالي فإننا نقول عن لغة Lisp بأنها Functional Language لأنها لغة تعتمد على الدوال ووظائفها ويكون الكود فيها مكون من دوال تستدعي بعضها لتؤدي معا وظيفة محددة.


عندما تفتح البرنامج LispWorks لكتابة أكواد باستخدام لغة Common Lisp فإن واجهة البرنامج ستظهر لك بالشكل التالي:


IPB Image




والآن هل أنت متشوق للتعرف على دوال لغة Lisp وكتابة برامج الذكاء الاصطناعي؟

إذن لنبدأ بتحميل البرنامج الذي سنعمل عليه..



البرنامج LispWorks:
هناك نسخ متعددة للغة Lisp تم إنتاجها من قبل شركات متعددة، وأفضلها وأحدثها على الإطلاق LispWorks من إنتاج شركة xanalyz ، والموقع الرسمي للشركة المنتجة لــ LispWorks موجود على الوصلة التالية:

http://www.lispworks.com/company.html


تستطيع تحميل برنامج LispWorks على أي من أنظمة التشغيل التالية:

نظام التشغيل ويندوز بجميع إصداراته

نظام التشغيل لينكس

نظام التشغيل يونكس.

وقد تم تخصيص ثلاث إصدارات أو ثلاث نسخ من LispWorks بإصدارات ونسخ مختلفة ومتطورة لكل نظام من هذه الأنظمة ، وهي كالتالي:

أولا: النسخة الشخصية
Personal Edition


نسخة مصممة من أجل البرمجة بلغة Lisp للأغراض الشخصية أو التعليمية.
هذه النسخة مجانية لجميع إصدارات أنظمة التشغيل، وتحتوي على نفس المترجم Compiler وبيئة التطوير الموجودة في لغة Common Lisp القياسية.


ثانيا: النسخة الإحترافية
Professional Edition

وتحتوي على أي شيء يحتاجه المبرمج من أجل برمجة وتطوير تطبيقات وبرامج Common Lisp التجارية. والتطبيقات المطورة على هذه النسخة يمكن أن يتم توزيعها مجانيا. وتتضمن هذه النسخة نظام إدارة واجهات Common Lisp من أجل زيادة قابلية نقل البرامج...


ثالثا: النسخة المتقدمة للمشاريع
Enterprise Edition

وتحتوي على جميع مميزات وخصائص النسخة الإحترافية بالإضافة لكونها تزودك بدعم إضافي للبرمجيات التي تحتاجها في المشاريع المتقدمة جدا ويتضمن ذلك:

Database access through object-oriented SQL/ODBC libraries.
الوصول لقاعدة بيانات من خلال مكتبات SQL/ODBC.

Industry standard distributed computing through LispWorks ORB.
حسابات موزعة قياسية صناعية من خلال LispWorks ORB.

Expert system programming through KnowledgeWorksTM which has an embedded Prolog compiler.
برمجة النظم الخبيرة من خلال قاعدة معرفية KnowledgeWorks والتي تتضمن على مترجم لغة برولوج Prolog compiler داخلها.


IPB Image