عن المشروع
8f4e هي لغة برمجة موجهة للمكدس ومحرر أكواد حي أُنشئ لعروض الموسيقى التوليدية في فعاليات algorave. يحتوي المستودع الأحادي على مترجم، وبيئات تشغيل متخصصة، ومحرر أكواد مرئي يعمل في المتصفح. يتبع المحرر حلقة بأسلوب REPL (تحرير، ترجمة/تقييم، ملاحظة المخرجات) لكنه مدفوع بواجهة المستخدم بدلاً من الطرفية.
## بنية الحزم
المشروع منظم كمستودع أحادي Nx مع حزم لـ:
- **compiler**: المترجم الأساسي الذي يحول كود 8f4e إلى WebAssembly، بما في ذلك حزم فرعية لمواصفات اللغة، والمُحضِّر المسبق للمشروع، وترجمة البرامج الفرعية (المُرمِّز، ومحلل الثوابت، ومخطط الذاكرة، ومحلل مراجع الذاكرة، ومحلل القيم الافتراضية للذاكرة، ومحلل المراجع الدلالية، ومحلل المكدس، وأدوات دلالية)، وتوليد كود wasm، والمكتبة القياسية.
- **editor**: حزم منتج المحرر، بما في ذلك compiler-worker (غلاف Web Worker)، وeditor-default (المترجم الافتراضي، وبيئة التشغيل، والتخزين، والأمثلة)، وeditor-core (محرر بسيط قابل لإعادة الاستخدام مع إدارة الحالة، وواجهة ويب باستخدام WebGL)، وeditor-website (موقع ويب قابل للنشر)، وبيئات تشغيل لـ AudioWorklet وWeb Worker.
- **examples**: وحدات ومشاريع نموذجية.
- **cli**: واجهة سطر أوامر لترجمة ملفات مشروع 8f4e.
- **metrics-dashboard**: لوحة تحكم محلية لمقاييس الإصدار.
- **config**: أدوات ومساعدات تكوين مشتركة.
## التطوير
1. تثبيت التبعيات: `npm install`
2. بناء جميع الحزم: `npx nx run @8f4e/editor-website:build`
3. تشغيل خادم التطوير: `npx nx run @8f4e/editor-website:dev` (التطبيق على http://localhost:3000)
استخدم `npx nx graph` لاستكشاف علاقات الحزم.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.