SBCL 2.4.1 ning chiqarilishi, Common Lisp tilining amalga oshirilishi

Common Lisp dasturlash tilini bepul tatbiq etuvchi SBCL 2.4.1 (Steel Bank Common Lisp) versiyasi nashr etildi. Loyiha kodi Common Lisp va C tillarida yozilgan va BSD litsenziyasi ostida tarqatiladi.

Yangi nashrda:

  • Belgilangan hudud algoritmidan foydalangan holda parallel axlat yig'uvchiga ixcham misol sarlavhalari uchun qisman qo'llab-quvvatlash qo'shildi.
  • Qaytish turlari e'lon qilingan funksiyalar uchun katta XAVFSIZLIK va DEBUG 3 optimallashtirish rejimlari turdagi tekshirish qaytish qiymatlarida bajarilishini ta'minlaydi.
  • FreeBSD platformasida libpthread bilan bog'lanish amalga oshiriladi va manzil maydonini tasodifiy aniqlash (ASLR) o'chirib qo'yilgan.
  • 64-bitli riscv va ppc arxitekturalarida yig'ilish tiklandi.
  • Fastrem-32 qo'llab-quvvatlashi barcha platformalar uchun amalga oshirildi (optimallashtirilgan FLOOR hisoblari uchun).
  • Belgilangan hududdagi parallel axlat yig'uvchi tomonidan xotira siqilganidan so'ng ko'chirilgan chiziqlarni qayta tozalashga olib keladigan xato tuzatildi.
  • SATISFIES turlari bilan ba'zi konstruksiyalarni qayta ishlashda kompilyator tsikli bilan bog'liq muammo hal qilindi.
  • Tizimning turli qismlarida (paketlar, Unicode jadvallari) ishlatiladigan xesh jadvallari to'qnashuvlarsiz (mukammal) xesh funktsiyalaridan foydalanishga aylantiriladi.
  • Sinf strukturasi ierarxiyasi uchun TYPECASE makros to'qnashuvsiz xesh yordamida amalga oshiriladi.
  • Ishlashni optimallashtirish uchun doimiy ofsetli indekslar uchun chegara tekshiruvlari olib tashlandi, bu erda kompilyator indeks o'lcham va ofset o'rtasidagi farqdan kamroq ekanligini biladi.
  • Kompilyator qo'shimcha DIGIT-CHAR optimallashtirish ma'lumotlarini hisobga oladi.
  • Kompilyator ba'zi APPLY, CONCATENATE va MAKE-ARRAY qo'ng'iroqlarida oraliq qiymatlarni yangi salbiy o'zgartirishlar bilan ketma-ketliklardan tuzilgan argumentlar uchun chiqarib tashlash qobiliyatini amalga oshirdi.
  • β€œ(LOOP FOR X IN (REVERSE LIST) ...)” siklining ishlashi tezlashtirildi, endi u kamroq kamchiliklardan foydalanadi.
  • "(LOOP... APPEND...)" sikli ixchamroq va NIL qo'shilganda kamroq ishlaydi.
  • Turli massivlar uchun turdagi tekshiruvlar tezlashtirildi va qisqartirildi.

Manba: opennet.ru

a Izoh qo'shish