عالم الرياضيات الفرنسي فابريس بيلارد، الذي أسس مشروعي QEMU وFFmpeg، ابتكر أيضًا أسرع صيغة لحساب Pi وطور تنسيق الصورة
تنفيذ جافا سكريبت
مقاعد البدلاء V8 أمام المحرك
بالإضافة إلى مكتبة تضمين المحرك في التطبيقات، يقدم المشروع أيضًا مترجم qjs، والذي يمكن استخدامه لتشغيل كود JavaScript من سطر الأوامر. علاوة على ذلك، يتوفر مترجم qjsc، وهو قادر على إنشاء ملفات إخراج قابلة للتنفيذ مناسبة للتنفيذ المستقل الذي لا يتطلب تبعيات خارجية.
السمات الرئيسية:
- مدمجة وسهلة الاندماج في مشاريع أخرى. يتضمن الكود عددًا قليلاً فقط من ملفات C التي لا تتطلب تبعيات خارجية للتجميع. أبسط تطبيق تم تجميعه يستغرق حوالي 190 كيلو بايت؛
- أداء عالي جدًا ووقت بدء تشغيل قصير. يستغرق اجتياز 56 ألف اختبار توافق ECMAScript حوالي 100 ثانية عند تنفيذها على نواة واحدة لجهاز كمبيوتر مكتبي عادي. تستغرق تهيئة وقت التشغيل أقل من 300 ميكروثانية؛
- الدعم الكامل تقريبًا لمواصفات ES2019 والدعم الكامل للملحق ب، الذي يحدد المكونات اللازمة للتوافق مع تطبيقات الويب القديمة؛
- اجتياز جميع الاختبارات من مجموعة اختبار ECMAScript؛
- دعم تجميع كود Javascript في ملفات قابلة للتنفيذ دون تبعيات خارجية؛
- جامع البيانات المهملة يعتمد على العد المرجعي دون التنظيف الدوري، مما سمح لنا بتحقيق سلوك يمكن التنبؤ به وتقليل استهلاك الذاكرة؛
- مجموعة من الامتدادات للحسابات الرياضية في JavaScript؛
- غلاف لتنفيذ التعليمات البرمجية في وضع سطر الأوامر، ودعم تمييز التعليمات البرمجية السياقية؛
- مكتبة قياسية مدمجة مع أغلفة فوق مكتبة C.
يقوم المشروع أيضًا بتطوير ثلاث مكتبات C مصاحبة تشارك في QuickJS ومناسبة للاستخدام الفردي:
- libregexp - تنفيذ سريع للتعبيرات العادية، متوافق تمامًا مع مواصفات Javascript ES 2019؛
- libunicode - مكتبة مدمجة للعمل مع Unicode؛
- libbf - تنفيذ عمليات الفاصلة العائمة الدقيقة والوظائف المتعالية مع التقريب الدقيق.
المصدر: opennet.ru