إصدار SBCL 2.4.1، وهو تطبيق للغة Common Lisp

تم نشر إصدار SBCL 2.4.1 (Steel Bank Common Lisp)، وهو تطبيق مجاني للغة برمجة Common Lisp. رمز المشروع مكتوب بلغة Common Lisp وC، ويتم توزيعه بموجب ترخيص BSD.

في الإصدار الجديد:

  • تمت إضافة دعم جزئي لرؤوس المثيلات المضغوطة إلى أداة تجميع البيانات المهملة المتوازية باستخدام خوارزمية منطقة العلامات.
  • بالنسبة للوظائف ذات أنواع الإرجاع المعلنة، يضمن وضع التحسين الكبير SAFETY وDEBUG 3 إجراء فحص النوع على قيم الإرجاع.
  • على منصة FreeBSD، يتم تنفيذ الارتباط مع libpthread ويتم تعطيل التوزيع العشوائي لمساحة العنوان (ASLR).
  • تمت استعادة التجميع على معماريات riscv وPPC 64 بت.
  • تم تنفيذ دعم Fastrem-32 لجميع الأنظمة الأساسية (لحسابات FLOOR المحسنة).
  • تم إصلاح الخلل الذي تسبب في إعادة مسح الخطوط المنقولة بعد ضغط الذاكرة بواسطة أداة تجميع البيانات المهملة الموازية لمنطقة العلامة.
  • تم حل مشكلة تكرار برنامج التحويل البرمجي عند معالجة بعض الإنشاءات باستخدام أنواع SATISFIES.
  • يتم تحويل جداول التجزئة المستخدمة في أجزاء مختلفة من النظام (الحزم، جداول Unicode) لاستخدام وظائف التجزئة الخالية من التصادمات (مثالي).
  • يتم تنفيذ الماكرو TYPECASE للتسلسلات الهرمية لبنية الفئة باستخدام تجزئة خالية من التصادم.
  • لتحسين الأداء، تمت إزالة عمليات التحقق من الحدود للفهارس ذات الإزاحات الثابتة، حيث يعرف المترجم أن الفهرس أقل من الفرق بين الحجم والإزاحة.
  • يأخذ المترجم في الاعتبار بيانات تحسين DIGIT-CHAR الإضافية.
  • قام المترجم بتنفيذ القدرة على استبعاد القيم المتوسطة في بعض استدعاءات APPLY و CONCATENATE و MAKE-ARRAY للوسائط التي تم إنشاؤها من تسلسلات مع تعديلات سلبية جديدة.
  • تم تسريع تشغيل الحلقة "(LOOP FOR X IN (REVERSE LIST) ...)" والتي تستخدم الآن سلبيات أقل.
  • تعد الحلقة "(LOOP... APPEND...)" أكثر إحكاما وتقوم بعمل أقل عند إضافة NIL.
  • تم تسريع وتقصير عمليات التحقق من الكتابة لمختلف المصفوفات.

المصدر: opennet.ru

إضافة تعليق