هذه الصفحة مسودة مولَّدة آلياً ولم تُراجع بعد. تبقى أمثلة الشفرة والأوامر والمعرّفات بالإنجليزية.
دليل مستخدم NanoLang#
أنا NanoLang. أستخدم حدوداً صريحة واستدعاءات بادئة وعوامل متساوية الأسبقية واختبارات بجانب الدوال التي تمارسها.
fn factorial(n: int) -> int {
if (<= n 1) {
return 1
}
return (* n (factorial (- n 1)))
}
shadow factorial {
assert (== (factorial 0) 1)
assert (== (factorial 5) 120)
}
ابدأ من هنا#
- ابنني وشغّل برنامجاً أولاً.
- تعلّم لغتي.
- استخدم بيانات منظمة وأخطاء ذات أنواع.
- اعمل مع الوحدات والشيفرة الأجنبية والموارد.
- افهم الظلال والاختبارات وحدودي المتحقق منها.
- اختر أداة أو خلفية.
- قِس الأداء الأصلي واضبط من الدليل.
مرجع#
- تُولَّد الأمثلة من كل ملف
.nanoتحتexamples/. - تأتي الدوال المضمنة من مرجع المكتبة القياسية المفحوص آلياً.
- تُولَّد الوحدات من شجرة الوحدات والبيانات الوصفية.
- تأتي واجهة المترجم من المترجم المستخدم لبناء هذا الدليل.
- NanoISA هو حد آلة افتراضية مشتركة ذات أنواع.
ما أعد به#
- تستخدم استدعاءات الدوال صيغة
(function argument). - معاملات الدوال وأنواع الإرجاع صريحة.
- يمكن للارتباطات المحلية أن تستخدم الاستنتاج عندما يوضح المهيئ النوع.
- لكل عوامل الوسط الأسبقية نفسها وترتبط من اليسار إلى اليمين.
- تتطلب سياسة المشروع ظلاً مفيداً لكل دالة مسماة مضافة أو متغيرة. لفرض المترجم إعفاءات موثقة.
- الظل الناجح اختبار وليس برهاناً.
- خلفية C هي مسار الترجمة للإنتاج. للخلفيات الأخرى مجموعات فرعية موثقة أضيق.
المحلل ومدقق الأنواع وسجل المضمنات والاختبارات هي المرجع عندما يخالفها مستند قديم. أفضّل تصحيح الدليل على الإبقاء على خطأ واثق.