"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > تقديم Duwa وهي لغة برمجة تشيشيوا

تقديم Duwa وهي لغة برمجة تشيشيوا

تم النشر بتاريخ 2024-10-31
تصفح:117

Introducing Duwa a Chichewa Programming Language

ما هو دوا؟

دوا ؟ هو العمل الذي أحبه - لغة مقصورة على فئة معينة (esolang) تمزج بين اللغة التقليدية والبرمجة الحديثة. باعتباري متحدثًا أصليًا للغة الشيشيوا ومبرمجًا، أردت إنشاء شيء فريد من نوعه يسد الفجوة بين تراثي اللغوي وعالم التكنولوجيا. تستخدم Duwa اللغة الشيشيوا، وهي لغة البانتو المستخدمة في ملاوي، باعتبارها جوهرها، مما يجعلها أداة فريدة من نوعها للتعلم والحفاظ على الثقافة.

الغرض من الدوا

لقد كان إنشاء Duwa مدفوعًا بعدة أهداف رئيسية:

  1. جعل البرمجة متاحة: أردت أن أجعل البرمجة أكثر سهولة بالنسبة للمتحدثين باللغة الشيشيوا من خلال استخدام تركيبات لغوية مألوفة، ومساعدتهم على رؤية البرمجة كشيء في متناول اليد.
  2. الحفاظ على لغة الشيشيوا وتعزيزها: في مجال تهيمن عليه اللغة الإنجليزية، شعرت أنه من المهم توفير مساحة لشيشيوا في المشهد التكنولوجي، مما يضمن تطور اللغة مع مرور الوقت.
  3. إنشاء أداة تعليمية فريدة: من خلال تصميم Duwa، كنت أهدف إلى تقديم طريقة جديدة لتعليم البرمجة، خاصة لأولئك الذين قد يشعرون بالغربة بسبب لغات البرمجة التقليدية.

Duwa هو انعكاس لشغفي بالبرمجة ولغتي الأم، وآمل أن يكون بمثابة منصة ترحيب للآخرين في المجتمع الناطق باللغة الشيشيوا.

الإعداد والتثبيت

إذا كنت ترغب في تجربة Duwa بنفسك، فإليك كيفية البدء:

  1. توجه إلى صفحة إصدارات Duwa GitHub: https://github.com/sevenreup/duwa/releases
  2. قم بتنزيل الملف الثنائي الذي يتوافق مع نظام التشغيل الخاص بك من أحدث إصدار.
  3. قم بتشغيل برامج Duwa باستخدام الثنائي (لاحظ أن الاسم الثنائي قد يختلف):
   ./duwa -f path/to/your/program.duwa

بناء الجملة الأساسي

دعني أوضح لك بعض أساسيات الدعاء.

مرحبا بالعالم

ndondomeko pano() {
    lemba("Moni Dziko");
}

pano();

في هذا المثال:

  • ndondomeko هي الطريقة التي قررت بها الإعلان عن وظيفة في Duwa.
  • ليمبا، والتي تعني "اكتب" في لغة الشيشيوا، تقوم بإخراج النص.
  • يقوم البرنامج ببساطة بطباعة "Moni Dziko" ("Hello World") على الشاشة.

المتغيرات

Duwa يدعم مجموعة متنوعة من أنواع المتغيرات:

// Numbers
nambala yoyamba = 1;
nambala yachiwiri = 2;

nambala yomaliza = yoyamba   yachiwiri;

// Strings
mawu dzina = "Maliko";

// Maps
mgwirizano munthu = {
    "dzina": "Soma",
    "zaka": 3
}

// Other types like boolean are not strongly typed

العبارات الشرطية

اخترت استخدام ngati لعبارات if وkapena لـ else، مما يجعل المنطق يتدفق بشكل طبيعي أكثر في لغة الشيشيوا:

// If statement
ngati(yoyamba > yachiwiri) {
    // panga zinthu (do something)
}

// If-else statement
ngati(yoyamba > yachiwiri) {
    // panga zinthu
} kapena {
    // panga zinthu
}

الحلقات

يدعم Duwa أيضًا حلقات while وfor:

// While loop
pamene(yoyamba > 2) {
    // panga zinthu
    yoyamba  
}

// For loop
za(nambala x = 0; x > 5; x  ) {
    // panga zinthu
}

دعونا نبرمج: مثال للبحث الخطي

لإعطائك فكرة عما يمكن أن تفعله Duwa، إليك خوارزمية بحث خطية بسيطة.
قم بإنشاء ملف جديد يسمى Kufufuza.duwa في محررك المفضل

ndondomeko kufufuza(arr, x) {
    za(nambala i = 0; i 



تشغيل البرنامج عن طريق تشغيل

duwa -f Kufufuza.duwa

سوف تحصل على فهرس 10 مطبوعًا على وحدة التحكم الخاصة بك

كسر الكود

  1. ndondomeko kufufuza(arr, x): تقوم هذه الوظيفة بإجراء البحث الخطي. كلمة "كوفوفوزا" تعني "البحث" في لغة الشيشيوا.
  2. تتكرر حلقة za خلال المصفوفة، للتحقق من القيمة المستهدفة.
  3. ngati (arr[i] == x): إذا تم العثور على العنصر، تقوم الدالة بإرجاع فهرسه.
  4. إذا لم يتم العثور على العنصر، ترجع الدالة -1.
  5. ndondomeko doLinearSearch(): تقوم هذه الوظيفة بإعداد حالة الاختبار واستدعاء وظيفة البحث.
  6. تتم طباعة النتيجة باستخدام lembanzr، والتي اخترت أن تعني "خط الكتابة".

يعطي هذا المثال لمحة عن كيفية تعامل Duwa مع الخوارزميات مع الحفاظ على التزامها بلغة الشيشيوا.

ولاية دوا الحالية

لا تزال Duwa قيد التقدم، وهناك بعض الكلمات والتركيبات التي لم تتم ترجمتها بالكامل إلى لغة الشيشيوا بعد. أنا أعمل بنشاط على هذه الترجمات، وأخطط لأن يكون كل شيء جاهزًا بحلول الوقت الذي تصل فيه Duwa إلى الإصدار 1.0.

حتى في حالته الحالية، يعمل Duwa بكامل طاقته، وأنا متحمس لرؤية كيف ينمو بينما أواصل تحسينه. أود أن أسمع تعليقاتك أثناء تجربتك لها!


المكافأة: لقد قمت بإنشاء ملحق vscode بسيط لإضافة دعم لـ Duwa إلى vscode، في الوقت الحالي، ستحصل فقط على تمييز بناء الجملة ولكنك تعمل على إضافة المزيد من الميزات. ابحث عن لغة Duwa في علامة تبويب ملحق vscode، أو قم بالتنزيل هنا

التنمية المستقبلية

بالنظر للمستقبل، لدي بعض الخطط الطموحة لدوا:

  • توسيع ميزات اللغة لجعلها أكثر قوة
  • إنشاء مكتبة قياسية لدعم البرامج الأكثر تعقيدًا
  • إنشاء مصادر تعليمية لمساعدة الآخرين على البدء باستخدام Duwa
  • تشجيع مساهمات المجتمع لإثراء اللغة ونظامها البيئي

تم إنشاء Duwa بالكامل من الصفر في Golang، مع الاستفادة من نقاط قوتها لإنشاء بيئة برمجة سريعة وفعالة وموثوقة. لقد كانت هذه رحلة مليئة بالتحديات ولكنها مجزية، وأنا متحمس لمعرفة إلى أين ستقودنا.

خاتمة

سواء كنت متحدثًا باللغة الشيشيوا مهتمًا بالبرمجة أو متحمسًا للبرمجة وتبحث عن شيء مختلف، آمل أن تلهمك Duwa بقدر ما ألهمتني. هذه الرحلة بدأت للتو، ويسعدني أن أشاركها معكم. من خلال جعل Chichewa جزءًا من عالم البرمجة، تفتح Duwa إمكانيات جديدة للتعليم والحفاظ على الثقافة والتعبير الإبداعي.

راجع المشاركة الأصلية
تحقق من جيثب.
التحقق من المستندات (لا يزال العمل قيد التقدم)

بيان الافراج تم نشر هذه المقالة على: https://dev.to/sevenreup/introducing-duwa-a-chichewa-programming-language-126k?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3