ابدأ مع كنوز
مرحباً بك في لغة كنوز البرمجية! كنوز هي لغة برمجة عربية حديثة مصممة لجعل البرمجة أكثر وضوحاً وسهولة للمتحدثين بالعربية. تتميز كنوز بنظام أنواع قوي، معالجة أخطاء متقدمة، ودعم كامل للبرمجة المتزامنة بما في ذلك الخيوط الخضراء (M:N scheduler) والأنواع المرتبطة المعممة (GATs).
هذا الدليل سيأخذك خطوة بخطوة من التثبيت إلى كتابة أول برنامج لك. في نهاية هذا الدليل، ستكون قادراً على:
- تثبيت كنوز على جهازك
- إنشاء وتشغيل برامج كنوز
- فهم البنية الأساسية للمشاريع
- البدء في تعلم ميزات اللغة
تثبيت كنوز
Section titled “تثبيت كنوز”التثبيت السريع (موصى به)
Section titled “التثبيت السريع (موصى به)”أسرع وأسهل طريقة لتثبيت كنوز على Linux أو macOS:
curl -fsSL https://sh.knoz.dev | shهذا الأمر سيقوم تلقائياً بـ:
- تحديد نظام التشغيل والمعمارية
- تحميل النسخة المناسبة
- تثبيت كنوز في المسار الصحيح
- إضافة كنوز إلى PATH
Windows
Section titled “Windows”لمستخدمي Windows، حمّل المثبت من صفحة التحميل:
التحقق من التثبيت
Section titled “التحقق من التثبيت”# عرض النسخةknoz --نسخة
# عرض المساعدةknoz --مساعدةيجب أن ترى:
كنوز - لغة البرمجة العربيةالإصدار: 1.0.0للمزيد من خيارات التثبيت: صفحة التحميل ←
أول برنامج لك
Section titled “أول برنامج لك”1. إنشاء مشروع جديد
Section titled “1. إنشاء مشروع جديد”# إنشاء مشروع جديدknoz جديد مرحباcd مرحباهذا ينشئ الهيكل التالي:
مرحبا/├── كنوز.toml└── مصدر/ └── رئيسي.كنز2. محتوى الملف
Section titled “2. محتوى الملف”افتح مصدر/رئيسي.كنز وستجد:
دالة رئيسية() { طباعة("مرحباً بالعالم!")؛}3. تشغيل البرنامج
Section titled “3. تشغيل البرنامج”# طريقة 1: تشغيل مباشرknoz شغّل
# طريقة 2: بناء ثم تشغيلknoz ابنِ./مرحبا # Linux/macOSمرحبا.exe # Windowsالنتيجة:
مرحباً بالعالم!مثال: حاسبة بسيطة
Section titled “مثال: حاسبة بسيطة”لنكتب برنامجاً أكثر تفاعلية!
1. إنشاء المشروع
Section titled “1. إنشاء المشروع”knoz جديد حاسبةcd حاسبة2. كتابة الكود
Section titled “2. كتابة الكود”عدّل مصدر/رئيسي.كنز:
دالة رئيسية() { طباعة("=== حاسبة بسيطة ===")؛ طباعة()؛
// إدخال الأرقام دع أ = 10؛ دع ب = 5؛
// العمليات الحسابية دع جمع = أ + ب؛ دع طرح = أ - ب؛ دع ضرب = أ * ب؛ دع قسمة = أ / ب؛
// عرض النتائج طباعة("{} + {} = {}"، أ، ب، جمع)؛ طباعة("{} - {} = {}"، أ، ب، طرح)؛ طباعة("{} × {} = {}"، أ، ب، ضرب)؛ طباعة("{} ÷ {} = {}"، أ، ب، قسمة)؛}3. التشغيل
Section titled “3. التشغيل”knoz شغّلالنتيجة:
=== حاسبة بسيطة ===
10 + 5 = 1510 - 5 = 510 × 5 = 5010 ÷ 5 = 2مثال: دالة مع معالجة الأخطاء
Section titled “مثال: دالة مع معالجة الأخطاء”دالة قسمة(أ: صحيح، ب: صحيح) -> نتيجة<صحيح، نص> { إذا ب == 0 { فشل("لا يمكن القسمة على صفر") } وإلا { موافق(أ / ب) }}
دالة رئيسية() { طباعة("=== معالجة الأخطاء ===")؛ طباعة()؛
// حالة ناجحة طابق قسمة(10، 2) { موافق(نتيجة) => طباعة("✓ 10 ÷ 2 = {}"، نتيجة)، فشل(خطأ) => طباعة("✗ خطأ: {}"، خطأ)، }
// حالة خطأ طابق قسمة(10، 0) { موافق(نتيجة) => طباعة("✓ 10 ÷ 0 = {}"، نتيجة)، فشل(خطأ) => طباعة("✗ خطأ: {}"، خطأ)، }}الأوامر الأساسية
Section titled “الأوامر الأساسية”| الأمر | الوصف |
|---|---|
knoz جديد <اسم> | إنشاء مشروع جديد |
knoz شغّل | تشغيل المشروع |
knoz ابنِ | بناء البرنامج |
knoz تحقق | التحقق من الأخطاء بدون بناء |
knoz اختبر | تشغيل الاختبارات |
knoz --نسخة | عرض النسخة |
knoz --مساعدة | عرض المساعدة |
هيكل المشروع
Section titled “هيكل المشروع”مشروعي/├── كنوز.toml # ملف المشروع├── مصدر/ # الكود المصدري│ ├── رئيسي.كنز # نقطة الدخول│ └── مكتبة.كنز # للمكتبات (اختياري)├── حزم/ # الحزم المثبتة└── هدف/ # ملفات البناءملف كنوز.toml
Section titled “ملف كنوز.toml”كل مشروع يحتوي على ملف كنوز.toml:
[حزمة]اسم = "مشروعي"نسخة = "0.1.0"وصف = "وصف المشروع"رخصة = "MIT"
[اعتماديات]# الحزم المطلوبةإضافة حزمة
Section titled “إضافة حزمة”# إضافة مكتبة رياضياتknoz أضف رياضيات_متقدمة
# تثبيت الحزمknoz ثبّتاستخدام في الكود:
استخدم رياضيات_متقدمة::{جذر_تربيعي، قوة}؛
دالة رئيسية() { دع ج = جذر_تربيعي(16.0)؛ طباعة("الجذر التربيعي لـ 16 = {}"، ج)؛}الخطوات التالية
Section titled “الخطوات التالية”الآن بعد أن ثبّت كنوز وكتبت أول برنامج، إليك ما يمكنك فعله:
1. تعلم الأساسيات
Section titled “1. تعلم الأساسيات”المتغيرات والثوابت ←
تعلم كيفية التعامل مع البيانات
الأنواع ←
نظام الأنواع الكامل في كنوز
الدوال ←
كتابة دوال قابلة لإعادة الاستخدام
2. المواضيع المتقدمة
Section titled “2. المواضيع المتقدمة”الهياكل ←
إنشاء أنواع بيانات مخصصة
معالجة الأخطاء ←
كتابة كود آمن وموثوق
البرمجة المتزامنة ←
استخدام الخيوط والقنوات
3. أدوات مفيدة
Section titled “3. أدوات مفيدة”مدير الحزم ←
إدارة الاعتماديات والحزم
أمثلة إضافية
Section titled “أمثلة إضافية”حلقة تكرارية
Section titled “حلقة تكرارية”دالة رئيسية() { // طالما (while) دع متغير عداد = 0؛ طالما عداد < 5 { طباعة("العداد: {}"، عداد)؛ عداد += 1؛ }
// لكل (for) لكل رقم في 1..=5 { طباعة("الرقم: {}"، رقم)؛ }}مصفوفة وحلقة
Section titled “مصفوفة وحلقة”دالة رئيسية() { دع أسماء = ["أحمد"، "فاطمة"، "علي"، "مريم"]؛
طباعة("قائمة الأسماء:")؛ لكل اسم في أسماء { طباعة(" - {}"، اسم)؛ }}هيكل بسيط
Section titled “هيكل بسيط”هيكل شخص { اسم: نص، عمر: صحيح،}
نفذ شخص { دالة جديد(اسم: نص، عمر: صحيح) -> ذاتي { ذاتي { اسم، عمر } }
دالة عرف(&ذاتي) { طباعة("أنا {}، عمري {} سنة"، ذاتي.اسم، ذاتي.عمر)؛ }}
دالة رئيسية() { دع شخص١ = شخص::جديد("أحمد"، 25)؛ شخص١.عرف()؛}حل المشاكل الشائعة
Section titled “حل المشاكل الشائعة”لم يتم التعرف على أمر knoz
Section titled “لم يتم التعرف على أمر knoz”# تأكد من أن كنوز في PATHecho $PATH | grep knoz
# أعد تشغيل Terminal أو أعد تحميل الملفsource ~/.bashrc # أو source ~/.zshrcخطأ في LLVM
Section titled “خطأ في LLVM”كنوز تحتاج LLVM 20. ثبّته:
# Ubuntu/Debianwget https://apt.llvm.org/llvm.shchmod +x llvm.shsudo ./llvm.sh 20
# macOSbrew install llvm@20الملف بامتداد .كنز لا يُقرأ
Section titled “الملف بامتداد .كنز لا يُقرأ”تأكد من:
- استخدام امتداد
.كنزوليس.txt - حفظ الملف بترميز UTF-8
- الملف موجود في مجلد
مصدر/
محرر النصوص
Section titled “محرر النصوص”VS Code (موصى به)
Section titled “VS Code (موصى به)”# تثبيت إضافة كنوزcode --install-extension knoz-lang.knoz-vscodeالميزات:
- ✓ تلوين الكود
- ✓ الإكمال التلقائي
- ✓ تحديد الأخطاء
- ✓ التنسيق التلقائي
محررات أخرى
Section titled “محررات أخرى”يمكنك استخدام أي محرر نصوص يدعم UTF-8:
- Vim/Neovim
- Sublime Text
- Zed
- IntelliJ IDEA
الموارد الإضافية
Section titled “الموارد الإضافية”- الدليل الكامل: هذا الموقع!
- صفحة التحميل: تحميل كنوز ←
- الأمثلة: مجلد
أمثلة/في المستودع - التقارير: GitHub Issues
الملخص
Section titled “الملخص”تهانينا! الآن أنت جاهز للبدء مع كنوز:
✓ ثبّت كنوز - عبر sh.knoz.dev أو من صفحة التحميل
✓ أنشئ مشروعك الأول - باستخدام knoz جديد
✓ كتبت أول برنامج - “مرحباً بالعالم!”
✓ تعلمت الأوامر الأساسية - شغّل، ابنِ، تحقق
الخطوة التالية: ابدأ بتعلم المتغيرات والثوابت ←