|
تعرف على أداة الـ Listener في برنامج LispWorks!
ما هي أداة Listener؟
عبارة عن أداة تسمح بكتابة الكود وتنفيذه مباشرة لمشاهدة النتائج.
تفتح لك هذه الأداة بمجرد الدخول إلى بيئة برنامج LispWorks.
تعتبر هذه الأداة أهم الأدوات على الإطلاق، فلماذا نحتاج لهذه الأداة بشكل كبير؟
من المفيد بالطبع لأي مبرمج تجربة الكود الذي يكتبه جزءا جزاء بدلا من تنفيذه دفعة واحدة، حيث أن تنفيذ الكود دفعة واحدة قد يؤدي لظهور أخطاء كثيرة وقد لا يسهل على المبرمج أن يكتشفها، ولكن باستخدام هذه الأداة التي تتفاعل مع المبرمج ومع الكود حيث تظهر الأخطاء في كل جزء (Form) من الكود، سيتمكن المبرمج بإذن الله من بناء كود كبير جدا وبدون أخطاء.
أهم خصائص الـ Listener :
يتم فتح الـListener بمجرد الدخول إلى بيئة LispWorks ومكونات النافذة تظهر بوضوح في الصورة التالية:

كما نلاحظ أن الـ Listener يحتوي على علامة استعداد Prompt تساعد المبرمج على كتابة كود باستخدام لغة Common Lisp جزءا جزءا، كل جزء أو ما يسمى بالفورم Form يتم كتابته أمام الـ Prompt وبعد الانتهاء والنقر على زر Enter فإنه سيتم عمل تقييم أو تقدير Evaluation لهذا الفورم.
ونتيجة عمل Evaluation في الـListener ستكون أحد أمرين:
1. سيتم ظهور رسالة خطأ على نفس الـListener في حال وجود خطأ في الـForm .
2. ظهور نتيجة العملية الحسابية أو الرياضية أو المنطقية في حال كتابة تعبير لأي منها، أو ظهور اسم الدالة أو المتغير في حال تم تعريف دالة أو متغير بشكل صحيح.
تتميز علامة الاستعداد في الـ Lsitener عن غيرها من علامات الاستعداد التي توجد في الموجهات النصية من مثل الموجودة في موجة أوامر الدوس Dos Prompt بأنها تحمل معلومات مفيدة للمبرمج، فهي تشير إلى عدد الأسطر الموجودة منذ بدء استخدام الـ Listener. بمعنى آخر، تشير إلى نقطة ومكان عمل Evaluation لأي Form في الـListener.
لمشاهدة المخرجات: قم بالضغط على Output Tap.
حساب القيم لنماذج بسيطة باستخدام هذه الأداة:
Evaluating simple forms
سنتناول الآن بعض الأمثلة البسيطة لنتعرف على آلية عمل Evaluating للنماذج Forms التي يتم كتابتها باستخدام هذه الأداة.
لن أفسر المعنى والـStructure البرمجي لها كثيرا فالدروس القادمة بإذن الله ستتناول ذلك بالتفصيل..
مثال1:
1- اكتب الرقم 12 أمام علامة الاستعداد ثم اضغط على Enter

2- اكتب * أمام علامة الاستعداد ثم اضغط على Enter

كتابة * تعني إظهار نتيجة التعبير السابق، سيظهر لنا هنا الرقم 12 حيث يعتبر ناتج العملية الحسابية التي تم إجراؤها في الفورم السابق.
3- استخدم جملة الإسناد في Lisp وهي setq لإسناد القيمة 12 إلى متغير ما وليكن x كالتالي:

4- لإظهار قيمة المتغير x، اكتب اسم المتغير x أمام علامة الاستعداد ثم اضغط على Enter

5- يمكنك أيضا جمع x مع نفسها ثلاث مرات بكتابة الكود كالتالي:

مثال2:
الدالة List تعتبر من أهم الدوال في لغة Lisp، حيث تعرف قائمة مكونة من عدد معين من العناصر..
1- لتعريف قائمة مكونة من العناصر من 1 إلى 5 اكتب الكود كالتالي:

وبالتالي فانه تم إنشاء قائمة مكونة من الأرقام من 1 إلى 5.
طريقة أخرى:
يمكن تعريف القائمة بالشكل التالي:

أي بوضع العلامة ‘ قبل القوس بدلا من كتابة الدالة list داخل القوس.
2- يمكن إسناد عناصر القائمة لأي متغير وليكن xlist باستخدام جملة الإسناد setq كالتالي:

أو بطريقة أخرى:

3- اكتب xlist أمام علامة الاستعداد لإظهار محتواها:

تلاحظ أنه ظهرت لك قائمة مكونة من الأعداد من 1 إلى 5 كقيمة للمتغير xlist.
إعادة حساب قيم نماذج موجودة:
Re-evaluating forms
بفرض أنك قمت بتعريف متغير اسمه var ويأخذ ، يمكنك أن تقوم بتغيير قيمة هذا المتغير والتعامل مع القيمة الجديدة مرة أخرى أثناء العمل على الكود ..
لتتعلم ذلك مارس المهارات البسيطة التالية:
1- لإسناد القيمة الجديدة ولتكن واحد إلى المتغير var قم بكتابة السطر التالي:

2- يمكنك الآن التعامل مع القيمة الجديدة، تستطيع على سبيل المثال جمع المتغير مع نفسه ثلاث مرات:

وستلاحظ أن نتيجة الجمع 3 ظهرت بمجرد النقر على Enter.
3- لمعرفة قيمة المتغير مرة أخرى، اكتب مباشرة اسم المتغير ثم انقر Enter.

تلاحظ أنه تم جمع قيمة var على نفسها ثلاث مرات دون إلغاء القيمة القديمة.
4- إذا أردت إسناد ناتج عملية الجمع إلى المتغير var فقم بكتابة السطر التالي:

5- وإذا أردت التأكد من أنه تم بالفعل إسناد القيمة الجديدة (ناتج عملية جمع المتغير مع نفسه ثلاث مرات) إلى المتغير var نفسه، قم بكتابة var أمام علامة الاستعداد ثم انقر Enter.

ستلاحظ بالفعل أنه تم إسناد نتيجة المع 3 إلى المتغير var.
المزيد من المواضيع
مقدمة في العمليات على القوائم [(List Processing)]
بيئة LispWorks والأدوات المتوفرة في هذا البرنامج!
دوال التعامل مع الأرقام في LISP مع الأمثلة (3)
طباعة المخرجات !
الشروط والإجراءات التابعة لها في LISP
الدوال المنطقية في LISP
دوال التعامل مع الرموز Characters في LISP
دوال المقارنة بين السلاسل الرمزية Strings في LISP
دوال التعامل مع سلاسل الرموز Strings في LISP
دوال المقارنة بين الرموز Characters في LISP
دوال التعامل مع الأرقام في LISP مع الأمثلة (4)
دوال التعامل مع الأرقام في LISP مع الأمثلة (2)
دوال التعامل مع الأرقام في LISP مع الأمثلة (1)
دوال إجراء العمليات الحسابية في لغة LISP
التعابير الرمزية، والقواعد اللغوية في لغة Common Lisp
دوال المقارنة في لغة LISP !
تعرف على أداة الـText Editor في برنامج LispWorks!
تنصيب LispWorks على جهاز يعمل بنظام التشغيل ويندوز
تحميل LispWorks لأي نظام تشغيل تعمل عليه (ويندوز / لينكس / يونكس)
مقدمة للغة Common Lisp
|