SBCL 2.4.2 (Steel Bank Common Lisp), besplatna implementacija programskog jezika Common Lisp, je objavljena. Kod projekta napisan je u Common Lispu i C-u i distribuira se pod BSD licencom.
U novom izdanju:
- Kompajliranje samog sustava na x86-64 sustavima Linux sada proizvodi bitno identične unakrsno kompajlirane fasl datoteke gdje je glavni graditelj cmucl, ccl, clisp ili sam sbcl.
- Optimizacije:
- Velik broj internih tablica, posebno onih povezanih s Unicode podrškom, pretvoren je u savršene hash funkcije (funkcije bez kolizija), čime se poboljšava brzina i smanjuje veličina.
- FIND, POSITION, ASSOC i RASSOC s nepromjenjivim argumentima niza koji sadrže znakove kao ključeve sada se kompajliraju za pretraživanje pomoću hashova bez kolizija.
- Na x86-64 sustavima, kompajler omogućuje eliminaciju skokova.
- Ispravke pogrešaka:
- Vraćena je mogućnost nasljeđivanja iz SEQUENCE i SB-MOP:FUNCALLABLE-STANDARD-OBJECT.
- COERCE neće pretvoriti lambda forme u funkcije ako je zadani naziv tipa podklasa od FUNCTION.
- LOG s argumentima s dvostrukim float i racionalnim argumentima (bilo kojim redoslijedom) ne gubi preciznost zbog međuargumenta s jednim float-om.
- LOG na bazu 2 cijelog broja potencije dva najvjerojatnije će dati matematički točan odgovor.
- LOG na racionalnim brojevima bliskim jedan s brojnikom ili nazivnikom bliskim potenciji dva koristit će log1p i stoga će izgubiti manje preciznosti.
- Vanjski utf-8 format s Unix završecima redaka ažurira podatke o veličini znakova kada se koristi brzi put za ASCII međuspremnike znakova.
- Sadržaj dinamički postojećih konstanti koje možda više nisu valjane nije ispisan u metodi PRINT-OBJECT za objekte THREAD.
- Uvijek postavite vanjske ulazne točke za funkcije prije bilo kojih drugih lokalnih funkcija.
- Uklonjene su neaktivne bilješke o optimizaciji za citirane obrasce i pojedinačne APPEND pozive velikom brzinom.
- Beskonačna petlja u COPY-SEQ na nizovima nulte duljine s elementima tipa NIL.
- Ispravljeno kompiliranje konstruktora struktura koje nisu na najvišoj razini.
- Ispravci u SB-SIMD-u:
- Poboljšana provjera granica u SB-SIMD-u.
- Popravak SB-SIMD AVX f64.4-obrnuto.
- Ispravljeno miješanje SB-SIMD-a na AVX i SSE2.
- Ispravak za doživotno korištenje u sse+xmm0 VOP-ovima.
Izvor: opennet.ru
