لغات البرمجة العربية

Download Report

Transcript لغات البرمجة العربية

‫لغات البرمجة العربية‬
‫عمل الطالبين‬
‫علي العماري‬
‫ريان المقيرن‬
‫محتويات العرض‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫مقدمة‬
‫ما هي لغات البرمجة‬
‫أهمية التعريب في مجال الحاسب‬
‫فوائد وأهداف لغات البرمجة العربية‬
‫العوامل المساعدة لتطور لغات البرمجة العربية‬
‫عوائق تطور لغات البرمجة العربية‬
‫طرق إنشاء لغات البرمجة العربية‬
‫•‬
‫مراحل تطور لغات البرمجة العربية‬
‫• أمثلة للغات برمجة عربية‬
‫• شرح لثالث لغات برمجة عربية‬
‫– لغة جيم‬
‫– لغة زاي‬
‫مقدمة‬
‫أصبح من لم يعرف التعامل مع هذا الجهاز الذي يسمي "حاسب آلي"‬
‫يعد ممن هو جاهل في هذا الزمن‪ ،‬فقد أصبح الحاسب اآللي متعلقا‬
‫بجميع أمورنا الحياتية وذلك بسبب قدرة هذه اآللة على التعامل مع‬
‫كميات كبيرة ومذهلة من المعلومات بسرعة عالية جدا‪ .‬ولكن هل لنا‬
‫نحن كعرب أن نقول أننا أسهمنا في هذا العمل والمشروع الجبار؟‪،‬‬
‫وإذا لم يكن لنا إسهاماتنا القوية‪ ،‬هل نستطيع مجارات هذا التقدم السريع‬
‫في هذه التقنية؟‪.‬‬
‫ما هي لغات البرمجة‬
‫• مصطلح البرمجة‬
‫– كتابة تعليمات وأوامر للحاسب اآللي وذلك بالتقيد بخطوات وقواعد لغة‬
‫البرمجة المستخدمة‬
‫• لغة البرمجة‬
‫– لغة ذات قواعد وكلمات معينة تستطيع من خاللها كتابة برامج‬
‫تطبيقية ويقوم جهاز الحاسب بتنفيذها‬
‫ما هي لغات البرمجة‬
‫• أنواع لغات البرمجة‬
‫– لغات البرمجة متدنية المستوى (‪)Low-Level Languages‬‬
‫• لغة اآللة (‪)Machine Language‬‬
‫• لغة التجميع (‪)Assembly Language‬‬
‫– لغات البرمجة عالية المستوى (‪)High-Level Languages‬‬
‫كيفية عمل لغات البرمجة‬
‫أهمية التعريب‬
‫التعريب في مجال الحاسب اآللي وبرمجة الحاسبات من‬
‫األمور األساسية التي ينبغي على أي شخص في هذا المجال‬
‫االنتباه والنظر اليها بعين حريصة ومسؤولة في نفس الوقت‪،‬‬
‫وذلك ألن اللغة العربية هي لغتنا األم وهي التي تعطي‬
‫اإلحساس لإلنسان باإلنتماء والقومية‬
‫فوائد لغات البرمجة العربية‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫حرية التطوير‬
‫استيعابها بشكل أفضل‬
‫قدرة تدريسها لشريحة أكبر من الطالب‬
‫تعزيز الهوية العربية‬
‫إمكانية االهتمام بها من قبل علماء العرب المبرمجين‬
‫العوامل المساعدة لتطور لغات البرمجة العربية‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫تبني الجامعات والمراكز البحثية للغات البرمجة العربية‬
‫تشجيع االبتكار والتطوير للغات البرمجة العربية‬
‫وضع مواصفات قياسية معيارية للغات البرمجة العربية‬
‫دراسة احتياجات المجتمع الفعلية‬
‫متابعة تطوير اللغة و تحديثها وصيانتها‬
‫تشجيع القطاع الخاص على دعم لغات البرمجة العربية‬
‫تطبيق استخدام لغات البرمجة العربية في المدارس‬
‫تشجيع وتكريم مطوري اللغات البرمجية العربية‬
‫عوائق تطور لغات البرمجة العربية‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫التكاليف العالية لتطوير لغات البرمجة‬
‫المردود المادي القليل‬
‫ضعف االهتمام بلغات البرمجة‬
‫حقوق الملكية‬
‫وجود لغات برمجة بديلة‬
‫غياب التحديثات األولية وضعف الصيانة‬
‫غياب التنسيق بين المبرمجين العرب‬
‫غياب الدعم المعنوي والنفسي‬
‫ضعف الثقه في المبرمجين‬
‫طرق انشاء لغات البرمجة العربية‬
‫• ترجمة لغات برمجة موجودة‬
‫– تعريب الكلمات المحجوزة من خالل المترجم‬
‫• إنشاء لغة برمجة جديدة كليا‬
‫– كتابة القواعد‬
‫– كتابة المترجم‬
‫مراحل تطور لغات البرمجة العربية‬
‫• المرحلة األولى‪:‬‬
‫مرحلة أبحاث وتطبيقات محدودة وتستخدم للتعليم في المراحل األولية‪ .‬مثال‪ :‬لغة‬
‫ليث‪.‬‬
‫• المرحلة الثانية‪:‬‬
‫ظهور حاسبات عربية مجهزة بلغات برمجة عربية مثل ‪ :‬جهاز الرائد وعليه لغة‬
‫الخوارزمي‪.‬‬
‫• المرحلة الثالثة‪:‬‬
‫تصميم لغة برمجة عربية ال تشبه أيا من اللغات األجنبية الحالية مثل‪ :‬ضاد‪.‬‬
‫أمثلة للغات برمجة عربية‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫غريب "لغة برمجة عربية" ‪ -‬العراق ‪ -‬عام ‪1978‬م‬
‫الخوارزمي ‪ -‬العراق ‪ -‬عام ‪1978‬م‬
‫دنيا ‪ -‬العراق ‪ -‬عام ‪1978‬م‬
‫ليث ‪ - LAITH‬العراق ‪ -‬عام ‪1978‬م‬
‫سعودية (سلطانة) ‪ -‬السعودية ‪ -‬عام ‪1979‬م‬
‫خوارزمي ‪ -‬الواليات المتحدة األمريكية ‪ -‬عام ‪1979‬م‬
‫نجالء ‪ -‬السعودية ‪ -‬عام ‪ 1979‬م‬
‫صخر بيسك ‪ -‬الكويت ‪ -‬عام ‪1980‬م‬
‫ضاد ‪ -‬السعودية ‪ -‬عام ‪ 1984‬م‬
‫سينا ‪ -‬السودان ‪ -‬عام ‪1986‬م‬
‫‪ - ARABW‬البحرين ‪ -‬عام ‪1986‬م‬
‫ل‪.‬ب‪.‬أ "لغة برمجة أخرى" ‪ -‬السعودية ‪ -‬عام ‪1986‬م‬
‫ديوان ‪ -‬عام ‪1987‬م‬
‫أمثلة للغات برمجة عربية‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫باسكال العربي ‪ -‬السعودية ‪ -‬عام ‪1988‬م‬
‫لغة خبير ‪ -‬السعودية ‪ -‬عام ‪1993‬م‬
‫باسكال العربي (بيئة متكاملة) ‪ -‬السعودية ‪ -‬عام ‪1996‬م‪.‬‬
‫زاي (بيئة متكاملة) ‪ -‬الجزائر ‪ -‬عام ‪1998‬م‬
‫لوغو العربية ‪ -‬السعودية ‪ -‬عام ‪1999‬م‬
‫باسكال المتوازي ‪ -‬السعودية ‪ -‬عام ‪2000‬م‬
‫لغة الرسالة ‪ -‬السعودية ‪ -‬عام ‪2001‬م‬
‫‪ - ARLOGO‬عام ‪2005‬م‬
‫‪ - Arabic Assembly Language‬عام ‪2005‬م‬
‫لغة عمورية ‪ -‬سوريا ‪ -‬عام ‪2006‬م‬
‫لغة ج ‪ -‬سوريا ‪ -‬عام ‪2006‬م‬
‫)‪ - First Arabic Visual Language (FAVL‬األردن ‪ -‬عام ‪ 2007‬م‬
‫‪ - MyProLang‬عام ‪2007‬م‬
‫سوبرنوفا – عام ‪2010‬م‬
‫شرح للغات برمجة عربية – لغة جيم‬
‫• لغة جيم‪:‬‬
‫•‬
‫•‬
‫•‬
‫•‬
‫هي لغة برمجة عالية المستوى قام بإنشائها الدكتور محمد السلكـا عام‬
‫‪2006‬م‬
‫أطلق على هذه اللغة اسم ج لشبهها في جوانب عديدة بلغة البرمجة‬
‫المعروفة ‪C‬‬
‫قام بتطوير برنامج الخوارزمي ليتيح كتابة البرامج بلغة ج‪ ،‬ووضعه‬
‫على موقع إنترنت ‪www.jeemlang.com‬للتحميل مجانا‪.‬‬
‫غير مفتوحة المصدر‪.‬‬
‫شرح للغات برمجة عربية – لغة جيم‬
‫• تنقسم الجمل في لغة ج إلى ثالثة أنواع‪:‬‬
‫• الجمل التعريفية‪ :‬وتعرّف األسماء واألنواع المستخدمة في البرنامج‪.‬‬
‫• الجمل التنفيذية‪ :‬وينتج عن تنفيذها قيام البرنامج بأعمال مختلفة‪.‬‬
‫• إيعازات المترجم‪ :‬وينفذها مترجم ج أثناء قيامه بترجمة البرنامج إلى‬
‫شيفرة تنفيذية‪.‬‬
‫المتحول ص ‪ :‬صحيح‬
‫شرح للغات برمجة عربية – لغة جيم‬
‫• الجمل التعريفية‬
‫– تستخدم في تعريف أسماء مميِّزة لعناصر البرنامج المختلفة‪ ،‬كالمتحوالت‬
‫والتوابع والخوارزميات‪.‬‬
‫– يمكن استدعاءالعناصر من خالل أسمائها‪.‬‬
‫– تأخذ الجمل التعريفية في لغة ج صيغة جمل اسمية‪ ،‬تبدأ باسم معرف بأل يعبر‬
‫عن نوع العنصر المراد تعريفه‪.‬‬
‫المتحول ص ‪ :‬صحيح‬
‫شرح للغات برمجة عربية – لغة جيم‬
‫• الجمل التنفيذية‬
‫– تقوم بعمل معين‪ ،‬ككتابة عبارة في لوحة الكتابة‪ ،‬أو إسناد قيمة لمتحول عددي‪،‬‬
‫أو قراءة حرف من ملف‬
‫– وتأخذ صيغة جمل فعلية‪ ،‬تبدأ بفعل مضارع على وزن أَف َع ُل (مثل أَكتبُ ‪،‬‬
‫أَرس ُم ‪ ،‬أُك ِّر ُر)‬
‫أجعل س = ‪3 ÷ 66‬‬
‫شرح للغات برمجة عربية – لغة جيم‬
‫• الكلمات المحجوزة‬
‫•‬
‫كلمات مفتاحية‬
‫– النوع ‪ ،‬المتحول ‪ ،‬الثابت ‪ ،‬الخوارزمية ‪ ،‬التابع‪.‬‬
‫– أجعل ‪ ،‬أكتب ‪ ،‬أقرأ ‪ ،‬أرسم ‪ ،‬ألون ‪ ،‬أنقش ‪ ،‬أنفذ ‪ ،‬أكرر ‪ ،‬إذا ‪ ،‬أرجع‪ ،‬أنتهي‪ ،‬أفتح ‪ ،‬أغلق‪.‬‬
‫– أدرج‪ ،‬بدل‪.‬‬
‫•‬
‫حروف وكلمات مستخدمة في بناء الجمل‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫•‬
‫في ‪ ،‬عند ‪ ،‬طالما ‪ ،‬من ‪ ،‬إلى ‪ ،‬حتى ‪ ،‬وإال‪.‬‬
‫صحيح‪ ،‬حقيقي‪ ،‬صغير‪ ،‬منطقي‪ ،‬حرف‪ ،‬ملف‪.‬‬
‫صفيفة‪ ،‬وحدة‪ ،‬مؤشر‪.‬‬
‫نفي‪ ،‬صواب‪ ،‬خطأ‪.‬‬
‫سطر‪ ،‬الورقة‪ ،‬مرة‪ ،‬بخطوة‪ ،‬للقراءة‪ ،‬للكتابة‪.‬‬
‫النقطة‪ ،‬مستقيم ‪ ،‬دائرة ‪ ،‬مستطيل‪ ،‬مثلث ‪ ،‬إهليلج ‪ ،‬مركزها ‪ ،‬قطرها‪ ،‬مركزه‪ ،‬قطريه ‪ ،‬رؤوسه ‪ ،‬باللون ‪،‬‬
‫بدقة‪.‬‬
‫توابع وثوابت مبيتة‬
‫– جب ‪ ،‬تجب ‪ ،‬جذر ‪ ،‬لغ ‪ ،‬عجب ‪ ،‬عتجب ‪ ،‬عظل ‪ ،‬حدس ‪ ،‬حدع ‪ ،‬جديد‪ ،‬صحيح‪.‬‬
‫شرح للغات برمجة عربية – لغة جيم‬
‫• إيعازات المترجم‬
‫– تمكن المترجم من استعمال كلمات بديلة باستخدام‪ :‬ب ّدل‪،‬‬
‫وإدراج مكتبات ما باستخدام‪ :‬أدرج‬
‫• مكتبة للرسم‬
‫– تمكن من رسم األشكال األساسية وتلوينها (أرسم النقطة‪ ،‬أرسم‬
‫مستطيل‪ ،‬أرسم مثلث‪ ،‬تحديد لون الرسم‪)...‬‬
‫شرح للغات برمجة عربية – لغة جيم‬
‫الثابت باي = ‪3.1415‬‬
‫المتحول ق ‪ :‬حقيقي‬
‫المتحول س ‪ :‬حقيقي‬
‫أكتب "أدخل قطر الدائرة ‪، " :‬سطر‬
‫أقرأ ق‬
‫أجعل س = باي × (ق ÷ ‪2^)2‬‬
‫أكتب "مساحة الدائرة = " ‪ ،‬س‬
‫شرح للغات برمجة عربية – لغة زاي‬
‫لغة زاي‬
‫• لقد أسسها الدكتور جمال الدين زقور في الجزائر عام ‪1998‬م‬
‫• تستخدم في بيئة خوارزم‪ ،‬وهي لغة خوارزمية بسيطة تحاكي‬
‫آالت تورنغ الشهيرة‬
‫• تضم تعليمات بسيطة و أخرى مركبة كاإلجراءات والدوال‬
‫التي تتبادل فيما بينها بالوسائط و المتغيرات الشاملة‬
‫شرح للغات برمجة عربية – لغة زاي‬
‫ليكن‬
‫م‪ ,‬ط ‪ :‬صحيح ؛‬
‫بداية‬
‫اقرأ(ط ) ؛‬
‫م ‪ =:‬ط * ‪ 4‬؛‬
‫اكتب (" محيط مربع طوله"‪ ,‬ط ‪" ,‬هو" ‪ ,‬م )‬
‫نهاية‬
‫جنود التعريب‬
‫د‪ .‬جمال الدين زقور‬
‫د‪ .‬محمد السلكة‬
‫جنود التعريب‬
‫د‪ .‬عبدالملك السلمان‬
‫د‪ .‬محمد السلكة‬
‫أمتي هل لك بين األمم *** منبر للسيف أو للقلم‬
‫النهاية‬