جامعة القدس المفتوحة

هل يمكن أن نخاطب الآلة باللغة العربية؟

نشر بتاريخ: 24-05-2015

أ. طروب سعد
تعرّف اللغة ببساطة بأنها "بعض الرموز التي تسهل عملية التواصل بين كائنين أو أكثر"، فبنو البشر تمكنوا-من خلال بعض الإشارات التي اكتسبوها نتيجة خبراتهم ورغباتهم-من التواصل مع بعضهم بعضاً، ثم تطورت هذه اللغة لتصبح على ما هي عليه الآن. والإنسان في سعيه المستمر نحو تحقيق الرفاهية فكّر في خلق أسلوب تواصل بينه وبين الآلة، واحتاج هذا التطور إلى عقود طويلة، فنتج عنه ما يسمى بـ(البرنامج) أو (لغات البرمجة). وتعرَّف لغات البرمجة بأنها "أسلوب لغوي يهدف إلى تحقيق التواصل بين الإنسان والآلة التي تنفذ أوامر معينة من خلال ما يسمى بالبرنامج". فالبرنامج مجموعة من الأوامر يفهمها الإنسان والآلة جيدا، ثم إنه (الإنسان) يتصل بها لإنتاج إشارات كهربائية محددة. وتوالت المحاولات في إصدار لغات برمجة مختلفة صُنفت من لغات برمجة متدنية المستوى إلى لغات برمجة عالية المستوى.
ظهرت البرمجة كعلم بظهور أول حاسوب، كان ذلك في منتصف أربعينيات القرن العشرين، وتطورت فيما بعد لتصبح علماً ومهنة في منتصف الخمسينيات. ومما يجدر ذكره أن الحواسيب التي ظهرت في مطلع الأربعينيات كانت تبرمج يدوياً بوساطة المفاتيح، ثم استُبدل بها طريقة أخرى باستعمال لوحات المفاتيح التي تضم قواعد حل المسائل المختلفة. وقد كانت هذه اللوحات على شكل لوحات إلكترونية من حيث التركيب، ولكن عملها كان مقتصراً على إنجاز الوظائف البرمجية. ثم تطورت البرمجة بتطور الحاسوب نفسه، إذ أصبح يعمل بوساطة برنامج مخزون في الذاكرة، ويُكتب هذا البرنامج باستعمال نظام العد الثنائي، وقد أُطلق على هذا الأسلوب لغة الآلة. ومع التطور الهائل في مجال الحاسوب أصبح من الصعب استعمال لغة الآلة، ذلك لأنها مكونة من أرقام يصعب على الإنسان أن يتذكرها، ولهذا السبب استبدل بالشيفرة الرقمية لكل عملية شيفرة حرفية، فبدلاً من استخدام "الصفر" و"الواحد" لتمثيل عملية الجمع، فقد استعيض عنها بالاختصار ADD))، وهذا الاختصار قابل للحفظ والتذكر بسهولة من قبل المبرمج، وسميت هذه اللغة الجديدة بـ (لغة الاختصارات)، وبما أن الحاسوب لا يفهم أو ينفذ أي أوامر ما لم تكن مكتوبة بوساطة لغة الآلة، فإن هذا البرنامج المكتوب بهذه اللغة الجديدة يجب أن تُجرى له عملية ترجمة، حيث تُحوّل إلى برنامج مناظر مكتوب بلغة الآلة.
 وهذه البرامج لا تكتب بشكل عشوائي، بل وفقاً لقواعد وأساليب حددتها الجهة التي أعدت لغة البرمجة المستخدمة، حتى يمكن لجهاز الحاسوب أن ينفذها للوصول إلى النتائج المطلوبة. لذلك دعت الحاجة إلى كتابة ما يسمى بالمترجمات أو المفسرات؛ وهي عبارة عن برامج وظيفتها التحويل أو الترجمة من اللغات العليا إلى لغة الآلة التي يفهمها الحاسوب، علما أن لكل لغة برمجة مترجماً خاصاً يترجم أوامرها إلى لغة الآلة التي سيعمل من خلالها البرنامج المترجم والمكتوب بإحدى اللغات العليا. وقد بينت الدكتورة (جريس هوبر) التي لقبت بـ"أم البرمجة" فكرة استعمال المترجمات لترجمة برامج مكتوبة بلغات شبيهة بالرياضيات، ومن هذه اللغات (Math-matic)، وقد شكلت محاولات الدكتورة (هوبر) بداية الطريق للغات عالية المستوى، ثم استطاع الدكتور (جيمس باكاس) من شركة (أي بي أم) تطوير لغة رمزية سميت لغة (فورتران)، وقد امتلكت هذه اللغة خصائص ومزايا لم تكن موجودة في لغة الآلة أو لغة الاختصارات، وكانت مناسبة لحل المسائل الرياضية والعلمية والهندسية، ويمكن استعمالها لأغراض عامة، وشكلت بداية الطريق لتطوير لغات برمجة عالية المستوى مثل لغات: (ألغول) و(آدا) و(باسكال) و(كوبول) وغيرها، وقد صنفت جميعها أنها لغات عالية المستوى، بينما اعتبرت لغة الآلة والاختصارات متدنية المستوى. ومن أهم لغات البرمجة واسعة الانتشار في أيامنا الحالية لغة (جافا) و(سي) و(سي++). ومع الانتشار الواسع لاستخدام الانترنت والتطور الهائل في مجال الاتصالات، فقد طُور كثير من لغات البرمجة الأخرى التي أصبحت تستخدم في برمجة تطبيقات الانترنت والاتصالات. ومن الجدير بالذكر أن لغات البرمجة هذه استخدمت لتطوير برمجيات مختلفة، مثل: برامج نظم التشغيل (ويندوز) و(ليونكس)، والبرامج التطبيقية (وورد) و(أكسل)، والبرامج الجاهزة كالبرامج المستخدمة في البنوك والجامعات. 
في الغرب ثمة لغات برمجة يستخدمها العلماء للتخاطب مع الحاسب، وهي قريبة من اللغة الإنجليزية، مثل (باسكال) و(لوغو) وغير ذلك. إن التدريب على استخدام هذه التقنية، وإتقان تشغيلها وبرمجتها من قبل التلاميذ والطلاب والشباب في الجامعات أو المدارس أو المعاهد لهو أمر مهم، ولكن مخاطبة لغة الآلة باللغة العربية تبقى مشكلة كبيرة، فهل يمكن أن نخاطب الآلة باللغة العربية؟ 
كما هو معروف، تعتمد معظم لغات البرمجة رفيعة المستوى على اللغة الإنجليزية، ومنذ ظهور لغات البرمجة في العالم توالت المحاولات لتصميم لغات برمجة عربية، فظهر بعضها واختفى الآخر. وبدأ العرب بتصور لغة برمجة منذ الأيام الأولى من ظهور الحاسب الآلي، فأوجدوا بعضها، مثل: (غريب 1978)، و(خوارزمي 1978)، و(باسكال العربي 1988)، ولغة (زاي 1998)، و(جيم 2001)، وغيرها من المحاولات العربية الحديثة التي خاضت هذه التجربة كـ(السوبرنوفا)؛ وهي ليست إعادة اختراع للغات البرمجة، إنما هي إضافة، إذ بدأ المخترع من حيث انتهى إليه الآخرون، وتلك اللغة بُنيت باستخدام أساليب الذكاء الاصطناعي لتكون إحدى لغات البرمجة من الجيل الخامس، فهي تصنف ضمن فرع معالجة اللغات الطبيعية، وتعد إضافة ملموسة إلى هذا الفرع من العلم. 
فيما يلي أهم الإنجازات العربية ولغات البرمجة النشطة: 
‌أ- لغة عمورية: ظهرت سنة 2008، وصممها عبد العظيم أحمد عمّوري في جامعة فيلادلفيا بالأردن، لها صياغتها الخاصة، وتعمل بنظام (ويندوز) برخصة "مفتوح المصدر".
‌ب- لغة (جيم): ظهرت سنة 2006، وصممها د. محمد عمار السلكة في سورية، تشبه في صياغتها لغة (سي)، وتعمل على نظام (ويندوز)، وهي لغة عربية خالصة مميزة، تحوي تعابير عربية سليمة فيها إمكانيات للبرامج الرسومية، وتتميز بالتوثيق والأمثلة، وهي بيئة تطوير متكاملة.
‌ج- (لغتي): وهي لغة برمجة عربية متعددة الأهداف، لها نسقها الخاص، ظهرت سنة 2008، صممها يوسف الباسل.
‌د- (العنقاء): ظهرت سنة 2007، صممها يوسف الباسل في الجامعة الأمريكية، لبنان. لها صياغتها الخاصة وتعمل على نظام (ويندوز).
‌ه- (كلمات): ظهرت سنة 2010، صممها محمد سامي في مصر، تعمل على نظام (ويندوز) برخصة "مفتوح المصدر".
‌و- لغة (زاي): ظهرت سنة 1998، صممها د. جمال الدين زقور في المعهد الوطني للإعلام الآلي بالجزائر، تشبه في صياغتها لغة (باسكال)، تعمل على نظامي (الدوس، والويندوز)، لها بيئة تطوير متكاملة لتعلم الخوارزميات، يمكنها مسح البرامج وترجمتها إلى لغة باسكال[10].
        وثمة لغات غيرها، مثل: لغة (الضاد) و(باسكال العربي) و(السنبلة) ولكنها غير نشطة.

* عضو هيئة تدريس–كلية التكنولوجيا والعلوم التطبيقية







قائمة المراجع

[1] د. الكوفجي، نجيب، ود. عبد الفتاح سليمان(2009)، هيكلية الحاسوب ولغة التجميع Assembly، منشورات جامعة القدس المفتوحة.
[2] د.العقيلي، صالح ارشيد، وخالد أمين البلشة(2000)، الحاسوب البرمجيات المعدات، الطبعة الأولى، دار الشروق للنشر والتوزيع، عمان–الأردن.
[3] بسيوني، عبد الحميد(2003)، أساسيات ومبادئ برمجة الكمبيوتر، دار الكتب العلمية للنشر والتوزيع، عابدين القاهرة.
[4] م. حبيب، مصطفى(2005)، المرجع الشامل في برمجةC++, JAVA, VISUAL BASIC, VISUAL BASIC.NET, VISUAL C#.NET ، الطبعة الأولى ، دار العلا للنشر والتوزيع.
مواقع الكترونية: 
[5] موقع "مبادرة لغات البرمجة العربية"، الموقع على الانترنت: 
 http://arabproglang.wordpress.com/2011/01/10/apllist/
[6] موقع "تاريخ لغات البرمجة العربية": 
http://arabproglang.wordpress.com/2011/01/10/aplhistory/
 [7] موقع "السوبرنوفا. لغة برمجة تستخدم اللغة العربية":
http://www.mawhopon.net/ver_ar/home.php