أمير نجران يستعرض تقرير «حفظ النعمة»    تركي بن محمد بن فهد يدشّن المقر الميداني لمحمية الإمام عبدالعزيز بن محمد الملكية    نائب أمير الشرقية يكرّم الفائزين في «هاكاثون التنمية الحضرية»    المؤتمر الصحفي الحكومي يسلّط الضوء على منجزات المملكة    معرض الدفاع العالمي: بروز المملكة وجهةً عالميةً للاستثمار في الدفاع والتكنولوجيا المتقدمة    المملكة: لا سيادة لإسرائيل على الأرض الفلسطينية المحتلة    رئيس لبنان: لم نعد قادرين على تحمل أي نزاعات    ارتفاع حصيلة ضحايا إعصار "جيزاني" إلى 59 شخصًا في مدغشقر    الشارقة يسقط أمام ناساف    رئيس اتحاد السيارات يزور متطوع تعرض لاصابة بحلبة كورنيش جدة    كونسيساو: لدينا لاعبين مميزين    الجوازات: خدمة تواصل عبر منصة "أبشر" تُمكّن المستفيدين من إنجاز المعاملات التي تعذّر تنفيذها إلكترونيًا    فرحة التأسيس    فيصل بن خالد يفتتح حملة «الصندوق الأبيض»    أمير الرياض يطّلع على جهود وإنجازات قيصرية الكتاب    أمير المدينة يطلق مشروع «على خطاه» ومعرض الهجرة    "التثقيف المجتمعي بالباحة".. إنجازات نوعية    مدير الأمن العام يتفقّد جاهزية الخطط الأمنية والمرورية لموسم عمرة 1447 ه    استعراض أعمال الحج والخطة الأمنية أمام نائب أمير مكة المكرمة    وزير الشؤون الإسلامية يدشن برامج خادم الحرمين لتوزيع المصاحف والتمور وتفطير الصائمين    مستشفى الدكتور سليمان الحبيب بالريان يُنهي معاناة ثلاثينية مع المشيمة المنغرسة للمرة الثانية مع الحفاظ على الرحم وإعادة ترميمه    "وعيك يحمي طفلك" ترسّخ الوقاية    التصلّب العصبي المتعدد يصيب 2.9 مليون شخص عالميًا... و60 حالة لكل 100 ألف في السعودية    غراب مصاب يطرق باب الطوارئ طلباً للعلاج    كسوف حلقي للشمس غير مشاهد في السعودية    تموينات خيرية تحفظ الكرامة    «الشورى» يطالب بتعزيز جودة التعليم والابتكار في الجامعات    وصفه ب«الأهم في التاريخ».. ترمب: 5 مليارات دولار تعهدات مجلس السلام لإعمار غزة    لماذا يعد شهر رمضان أكثر الشهور إنفاقًا؟    نائب أمير المكرمة يطلع على خطط موسم العمرة    «موهبة» تعلن اكتشاف 34 ألف موهوب جديد    اختتام فعاليات معرض «ريشة العلا»    نجوم في برنامج رامز ليفل الوحش    صعوبات ما بعد التقاعد    في الجولة الأخيرة بدوري أبطال آسيا للنخبة.. الاتحاد ضيفاً على السد القطري    أصداء عالمية ومحلية لأغلى سباقات الخيل العالمية.. دعم القيادة والتنظيم الرائع ساهما في النجاح الكبير ل «كأس السعودية»    أهلًا بشهر الخيرات    مدير الأمن العام يرأس اجتماع قادة قوات أمن العمرة    في ملحق دور ال 16 لدوري أبطال أوروبا.. ريال مدريد يواجه عقدة بنفيكا.. وصراع فرنسي بين موناكو وباريس    فرع للمركز التشاركي بمكة المكرمة    رغم سريان وقف إطلاق النار.. قتيل بغارة إسرائيلية جنوب لبنان    النساء في رمضان    الذكاء الاصطناعي يقترب من لونا 9    90 كفيفا بمسابقة جري    القبيع يطوي ابتسامات عبوس مهنة الصحافة    أكبر طبق مرسة بوزن 55 كجم    أعراض السعال القلبي    ثنائية نونيز تهدي الهلال الفوز على الوحدة في ختام مجموعات نخبة آسيا    3 جولات بمسمى التأسيس    20 بسطة رمضانية مجانية توزعها بلدية الشقيق    أمير تبوك يترأس غداً اجتماع الإدارات الحكومية والخدمية المعنية باستعدادات شهر رمضان    أمانة عسير تطلق حملة الامتثال لتعزيز سلامة الغذاء في الأسواق الرمضانية    السعودية تدين قرار سلطات الاحتلال الإسرائيلي بتحويل أراضي الضفة الغربية إلى ما تسميه أملاك دولة تابعة لسلطات الاحتلال    أمير المدينة المنورة يفتتح معرض «الهجرة على خطى الرسول»    محمية الأمير محمد بن سلمان الملكية تعيد توطين الأرنب العربي    التأسيس والعودة بالذاكرة    أكد تحقيق تطلعات القيادة.. راكان بن سلمان: نهتم بدعم مسيرة التنمية الشاملة    الأمير فواز بن سلطان يستقبل المهنئين بمناسبة تعيينه محافظًا للطائف    







شكرا على الإبلاغ!
سيتم حجب هذه الصورة تلقائيا عندما يتم الإبلاغ عنها من طرف عدة أشخاص.



بيدي: بالمصادفة اكتشفت أن الجافا سكريبت تقبل بالمتغير العربي ومنها بدأت انطلاقة المشروع
إبداعات عربية الوينوسكريبت لغة برمجة نصية عربية مبنية على الجافا سكريبت
نشر في الرياض يوم 20 - 12 - 2005

إبراهيم بيدي شاب مغربي طموح قاده اهتمامه بالإنترنت إلى عمل ما يمكن تسميته أول لغة عربية لبرمجة الويب مبنية على الجافا سكريبت. هذه اللغة التي استغرقت في بنائها واختبارها مدة سنة ونصف أثمرت عن خروج لغة الوينوسكريبت العربية التي يتمكن المستخدم العربي من البرمجة باستخدام اللغة العربية.
صفحة الإنترنت والاتصالات كان لها هذا اللقاء الشيق والمفيد مع الأستاذ إبراهيم.
من يكون ابراهيم بيدي؟
- إبراهيم بيدي 25 سنة أمازيغي الأصل مسقط الرأس الأطلس الكبير بمدينة ورززات جنوب المملكة المغربية، أقيم حاليا مع أسرتي بمدينة الدار البيضاء، كانت دراستي الفنون التشكيلية، إلى أن تعرفت على الزائر الجديد الانترنت سنة 1998، حيث رافقني صديق لي رغما عني إلى أحد نوادي الانترنت، لم أكن أريد أن أذهب معه لأني لم أكن أفقه شيئا عن الحاسوب، فكيف بالإنترنت، تعلمت التعامل مع الانترنت قبل أن أتعلم كيف أتعامل مع سطح المكتب، شيئا فشيئا بدأت أتعلم، إلى أن اكتسبت و لله الحمد خبرة في البرمجة، بلغات البرمجة القياسية ECMAScript JScript و ActionScript و خصوصا JavaScriptوإتقان اللغات التي تتوافق مع المنضمة العالمية w3s كHtml Xhtml Css Dom Svg Xml.
طوال هذه السنين تكونت لدي خبرة وتخصص باللغات التي تتعامل مع المتصفح هذه الخبرة المكتسبة لا فضل لأي مدرسة فيها سوى توفيق الله سبحانه وتعالى وحب المعرفة والجهد الذي أخذته مني الليالي البيضاء حين كنت أتعلم وما زلت والصديق الذي عرفني على الإنترنت أول مرة.
تعلمت البرمجة من النسخ المصدرية في البداية كنت مقتصرا على الملاحظة وتغيير بعض الأسطر، لكن فيما بعد بدأت أتعلم على أساس قاعدة وضعتها لنفسي «استفسر ثم أقارن ثم استنتج ثم أحفظ» فيما بعد أطبق، وهكذا دواليك إلى أن أنجزت أول سكريبت كبير وهو الساعة العربية بالجافا سكريبت.
ماهي لغة الوينوسكريبت WinoScript - وما هو الهدف والفكرة من ورائها وماذا يعني هذا الاسم؟
- بالمصادفة اكتشفت أن الجافا سكريبت تقبل بالمتغير العربي بمعنى أنها تقبل كود آسكي كمتغير، وكنت اعرف من قبل ما تقدمه الجافا سكريبت من سهولة في التوصيف، وانه يمكن بسهولة أن يحمل أي متغير قيم الدوال، أو أن نجعل دوال جديدة على أساس الموجودة، ففكرت مباشرة بعد هذا في استغلال هذه القدرات التي تمكنني إياها الجافا سكريبت في كتابة أول وسيط بين اللغة العربية والبرمجة.
والوينوسكريبت إن قلنا عليها لغة فهي لغة برمجة نصية وليست هيكلية أي هي ترجمة للغة أخرى Scripting Languages.
ولي هدفان منها أولا:
تقريب التعامل والتخاطب مع المتصفح، كون كثير من شباب الساحة العربية يتقنون التعامل والتحكم في أجهزة وسيرفرات تبعد عنهم آلاف الأميال، لكن قليل هم من يعرف التحكم والتعامل مع متصفح لا يبعد عنه سوى عشرات السنتمترات.
الهدف الثاني:
هي جعل خوارزميات البرمجة في متناول الجميع، حتى أولئك الذين يجدون عائق اللغة أمامهم، أو حتى من لم يبرمج قط سطرا في حياته لأن الخوارزميات ما هي إلا عمليات ومقارنات وتطبيقات منطقية تبقى كما هي حتى و لو اختلفت اللغة.
أصل التسمية:
سكريبت: نص برمجي غالبا يترجم من طرف برنامج ك javascript من طرف المتصفح و ActionScript من طرف flashPlayer وmircScript من طرف الميرك وليس كباقي لغات البرمجة الهيكلية. وينو: للتملك بالأمازيغية تعني (لي) بالعربية كهذا لي وينو سكريبت كأنك تقول (لي برمجتي النصية).
كيف طورت هذه اللغة (السكريبت) وهل تعمل على جميع المتصفحات؟
- في الإصدار التجريبي الأول، كان ملزما أن تبرمج باللغة العربية وسط الصفحة ضمن الوسم سكريبت، والبرمجة تكون محصورة بيني علامتي التجاهل - هنا البرمجة - حتى يتم تجاهل مضمون السكريبت ويتم تفادي الأخطاء التركيبية الsynatax الناتجة عن أخطاء الكتابة كون البرمجة بالعربية ستعتبر خطأ ما لم تترجم، وما إن تحمل الصفحة حتى يقوم ملف ال wino.script بسحب ذاك الكود العربي ويقوم بترجمتها ثم إعادة تفعيلها.
الآن أصبح بالإمكان البرمجة في ملف نصي مستقل وبدون شروط، واستدعاء هذا الملف بسطر واحد وسط الصفحة، وثم الاستعانة بتقنية أجاكس (جافا سكريبت التزامنية بالإضافة إلى xml) لاستدعاء ملف البرمجة وكذا المكتبات الخاصة بالدوال والكائنات العربية الموجودة في ملفات مستقلة عن بعضها أو قد تكون مخزنة في قواعد البيانات، نضع مثلا ملف به ترجمة لصفحات الأنماط الانسيابية(css)، هذا الملف يكون مستقلا عن الوينوسكريبت ولا يتم استدعاؤه إلا حينما يطلب المبرمج ذلك من خلال الكود، نفس الأمر مع باقي دوال الجافا سكريبت الخاصة بالزمن أو تلك الخاصة بالتعامل مع المستندات و كائنات (أكتف.إكس)، وتم الاعتماد على DOM(نموذج مستند اتحاد الشبكة العالمي) حتى تعمل على جميع المتصفحات القياسية.
هل تعتزم على طرح منصة IDE يمكن استخدامها لكتابة سكريبتات بلغة WinoScript ؟
- أفكر بهذا؟ لكن كل بأوانه، الأولوية الآن لآلية (نواة) الوينوسكريبت بعد طرح النسخة الرسمية وتم الإقبال عليها، قد تتحقق إن شاء الله أرضية لمنصة خاصة بالوينوسكريبت.
القواعد اللغوية والأوامر البرمجية في اللغة (مثل الجمل الشرطية مادام أو الوظائف مثل صاين) هل تم الرجوع لقاموس مصطلحات اللغة العربية في الحاسب أم تم الاجتهاد في بناء التعبيرات البرمجية؟ وكيف يمكن البرمجة بهذه اللغة (السكريبت)؟
- المصطلحات البرمجية ك ادا() مادام() مع() تجزيء() الصاين() استدعي() او جيب التمام هم من اجتهادي، وضعت مؤقتا وهي قابلة للتغير، لأنني لا يمكن أن أجزم أنها صحيحة 100 ٪.
و أكرر أن هذه الطريقة في كتابة الكود ليست حكرا على اللغة العربية فقط فالصيني والهندي والفارسي والألماني بإمكانه أن يكتب برنامجه أو سكريبته بهذه الطريقة بلغته التي يتقنها حتى أن الإنجليزي الذي مل من المصطلحات الخاصة بجافا سكريبت يستطيع أن يقوم بالبرمجة بطريقته الخاصة وبمصطلحاته التي يراها ملائمة له.. لكن آلية البرمجة تبقى واحدة.
لبرمجة كود بالوينو سكريبت، نفتح ملفا نصيا عاديا، وتكون التقنية كما ECMAscript القياسية، أي لتجاهل السطر نستعمل علامتي // و لتجاهل عدة اسطر /**/ ولإعلان المتغير
المتغير الف = 1000 ;
المتغير ا = ب = ج = د = ه = و = ز = «هذه حروف عربية» ;
الدالة دالة_جديدة(){} او دالة_جديدة = الدالة(){}
الفاصلة المنقطة غير مهمة طالما أننا قفزنا السطر في البرمجة، ولإعطاء متغير قيمة ما نستعمل = ولإضافة + ولإضافة قيمة عليه += و للمقارنة == وللمخالفة ! ...وهكذا.
هل تحتاج لغة WinoScript إلى مترجم خاص بها؟ إذا نعم ما هو هذا المترجم ومن قام بنائه وكيف يمكن تضمينه في المتصفح؟
- بطبيعة الحال وينو سكريبت تحتاج إلى مترجم خاص بها، بعد أن ننتهي من ملف البرمجة بالعربية نقوم بتضمينه في المتصفح أي باستدعاء المفسر أولا كما نستدعي أي ملفjs لكن ببعض الإضافات الخاصة على الشكل رقم (1)، فيقوم المتصفح أولا بإدخال ملف ال wino.script أي المفسر الذي هو أصلا مبرمج بالجافا سكريبت وفق المعايير القياسية، حينها يقوم المفسر بجلب الملف الذي يكون في التعريفة link، بعد جلبه يقوم بترجمة الجمل الشرطية وإعادتها لصيغتها البرمجية ثم يُفعل الكود، لكن عند تفعيلها قد تكون هناك استدعاءات من داخل الملف العربي لبعض الدوال أو الكائنات أو مكتبات، فيقوم المفسر بإدخالها وتفعيلها ثم إتمام الكود سطر سطر، وهذه الكائنات أو المكتبات ممكن أن تكون مرفقة مع الوينو سكريبت كما يمكن إضافتها من طرف المبرمج أو المطور، فمثلا كائن HttpRequest فالمفسر سيقوم بكل المعاملات الخاصة بهذا الكائن والمبرمج قد لا يحتاج ان يكون ملما بتقنية أجاكس للتعامل بها فيكفي المبرمج ان يكتب في الحالات العادية الموجود في شكل رقم (2).
بذلك يمكن للمطورين أن يضعوا ملفات وكودات كبيرة بال js وتحويله لكائن له خصائص ومناهج سهلة الوصول والتعامل باللغة العربية، كالكود مبيان سكريبت الذي يعوض ما تقدمه مكتبة GD في إظهار المنحنيات، برمجتها والتعديل عليه شبه معقد، لكن يمكن أن يحوله المطور لكائن سهل التعامل معه، نستدعيه وقت حاجتنا له في البرمجة العربية.
وهذا المفسر قمت ببنائه بنفسي، حسب خبرتي وتجربتي المتواضعة.
كم استغرق بناء لغة WinoScript وهل هناك أمثلة تطبيقية عليها... وكيف وجدت إقبال المبرمج العربي عليها؟
- النسخة التجريبية استغرقت حوالي ثلاث أشهر، هذا الإصدار الجديد فيه تغييرات جوهرية، قد شارفت على انتهائه، استغرق تطويره مدة سنة ونصف.
من الأمثلة التطبيقية على الوينو سكريبت هي إعادة برمجة الساعة العربية كله باللغة العربية، حيث يفوق عدد اسطر برمجته 400، عندما طرحت الإصدار التجريبي الأول كان هناك تشجيع من جميع من رآه هناك من نصحني بتجنب بعض الأخطاء وآخرون دعوني لاستفادة من تجاربهم السابقة وبعض قام بإنجاز كومبايلر بطريقة مختلفة، والبعض قدمه وشرحه أفضل من واضعه وكلهم مستعدون للبرمجة بها، لكن كانت هناك مشكلة هي انه لم يتم الاتفاق على أسماء الدوال وكيف تكون البرمجة رغم أن قاعدة البرمجة هي نفسها ECMAScript القياسية، لم تكن لي إستراتيجية محكمة لضبط اتجاه اللغة، خصوصا أنها تصادفت آنذاك مع مشاكل خاصة لكن في حين الإصدار الرسمي للغة الوينوسكريبت النسخة العربية سيكون الإصدار وفق معايير قياسية مضبوطة متفق عليها من لدن الجميع، إن شاء الله وموقعه سيكون اكبر مثال عليه.
لمن يريد أن يجرب اللغة كيف يمكن له البدء باستخدامها؟
- يمكن له أن يحمل النسخة التجريبية من سوالف أو موقع مركز السكريبتات العربية، لكن سيبرمج وفق نهجي الخاص الذي وضعت له آنذاك، لكن يمكن أن يجرب ويضيف فيه ليكتشف قدرات اللغة، إلى حين صدور الإصدار النهائي في الموقع الرسمي www.winoscript.com
هل هناك نية لطرح اللغة (السكريبت) كمصدر مفتوح... أو إرسالها لأحد المهتمين لتبنيها سواء كان في العالم العربي أو الغربي؟
- لا يمكن للوينوسكريبت إلا أن تكون مصدرا مفتوحا، ولا يمكن أن تكون غير ذلك، وتبني للوينو سكريبت على أساس أن يبقى مصدرا مفتوحا ومتاحا للجميع أمر مقبول، رغم إني أفضل دعمه فقط، معنويا بالدرجة الأولى، وماديا بالدرجة الثانية.
ماهي خططك المستقبلية؟
- بعد إتمام الوينو سكريبت سأحول كل سكربتاتي القديمة إليها وأبرمج بها مشاريع كبيرة إن شاء الله، وبعدها سأبدأ بمشروع إدخال الحرف الأمازيغي (تفناغ) إلى الحاسوب والانترنت ليواكب التكنولوجيا الحديثة، والاستفادة من التجربة التي مرت بها العربية قبل دخولها، حتى أكون أول واحد يبرمج باللغة الأمازيغية.
[email protected]


انقر هنا لقراءة الخبر من مصدره.