Common Lisp programlama dilinin ücretsiz uygulaması olan SBCL 2.4.2 (Steel Bank Common Lisp) sürümü yayınlandı. Proje kodu Common Lisp ve C dillerinde yazılmıştır ve BSD lisansı altında dağıtılmaktadır.
Yeni sürümde:
- Компиляция системой самой-себя на системах x86-64 c Linux теперь производит побитово-идентичные кросс-компилированные fasl-ы там, где сборочным хостом является cmucl, ccl, clisp или сам sbcl.
- Örnekler:
- Çok sayıda dahili tablo, özellikle Unicode desteğiyle ilgili olanlar, çarpışmasız karma işlevlerini (mükemmel) kullanacak şekilde dönüştürüldü; bu, hızı artırıyor ve boyutu küçültüyor.
- Anahtar olarak semboller içeren sabit sıralı bağımsız değişkenlere sahip FIND, POSITION, ASSOC ve RASSOC artık çarpışmasız karmalar kullanarak aramalar için derleniyor.
- X86-64 sistemlerinde derleyici atlamadan atlamaya geçişi ortadan kaldırır.
- Hata düzeltmeleri:
- Hem SEQUENCE hem de SB-MOP:FUNCALLABLE-STANDARD-OBJECT'ten devralma yeteneği geri yüklendi.
- Verilen tür adı FUNCTION'ın bir alt sınıfı ise COERCE form lambdalarını işlevlere dönüştürmez.
- Çift kayan noktalı ve rasyonel argümanlara (herhangi bir sırayla) sahip LOG, ara tek kayan noktalı bağımsız değişken aracılığıyla kesinliği kaybetmez.
- LOG'u ikinin tamsayı üssü 2'ye almak büyük olasılıkla matematiksel olarak doğru bir cevap verecektir.
- Pay veya paydası ikinin üssüne yakın olan bire yakın rasyonel sayılardaki LOG, log1p'yi kullanacak ve dolayısıyla daha az hassasiyet kaybedecektir.
- Unix satır sonlarına sahip harici utf-8 formatı, ASCII karakter arabellekleri için hızlı yol uygulanırken karakter boyutu bilgisini günceller.
- THREAD nesneleri için PRINT-OBJECT yönteminde muhtemelen artık geçerli olmayan dinamik olarak mevcut eksilerin içeriği yazdırılmadı.
- İşlevler için harici giriş noktalarını her zaman diğer yerel işlevlerden önce yerleştirin.
- Alıntılanan formlar ve tek APPEND çağrıları için etkin olmayan optimizasyon notlarını yüksek hızda kaldırın.
- NIL öğe tipine sahip sıfır uzunluklu dizilerde COPY-SEQ'da sonsuz döngü.
- Üst düzey olmayan yapı kurucularının derlenmesi düzeltildi.
- SB-SIMD'deki düzeltmeler:
- SB-SIMD'de sınır kontrolü iyileştirildi.
- SB-SIMD AVX f64.4-reverse'yi düzeltin.
- AVX ve SSE2'de SB-SIMD karışıklığını düzeltin.
- Sse+xmm0 VOP'larda sabit ömür.
Kaynak: opennet.ru
