عن المشروع
sysl هي لغة برمجة أنظمة عامة مصممة لتوفير التحكم الذي تمنحه لغات الأنظمة مع الحفاظ على سهولة الوصول. وهي تستخدم عد المراجع لإدارة الذاكرة بدلاً من نظام borrow checker أو جامع القمامة (garbage collector). يتم إدارة الذاكرة من خلال أنماط أنواع صريحة: `T` للقيمة/المكدس (stack)، و`&T` لمرجع ARC في الذاكرة الكومة (heap)، و`*T` للمؤشرات الخام (raw pointers)، مكملة بـ `ref` للربوط المحلية.
تُترجم اللغة إلى ملفات ثنائية أصلية عبر LLVM IR ويتم الربط باستخدام clang. وتتميز بمكتبة قياسية شاملة وواجهة وظائف خارجية (FFI) قوية تسمح لها بالربط مع مكتبات C أو أن يتم ربطها في مشاريع C كأرشيف ثابت.
تشمل الميزات التقنية الرئيسية ما يلي:
- الترجمة عبر LLVM إلى ملفات ثنائية أصلية.
- إدارة الذاكرة القائمة على عد المراجع (ARC).
- توافق قوي مع لغة C عبر توجيهات `@export` و`@link`.
- مترجم تم تنفيذه باستخدام Scala 3، متاح كأداة واجهة سطر أوامر (CLI) ومكتبة عبر Maven Central.
- دعم متكامل للاختبار باستخدام سمات `@test` داخل الكود المصدري.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.