Objavljeno je izda SBCL 2.4.2 (Steel Bank Common Lisp), svobodna implementacija jezika za programiranje Common Lisp. Kod projekta je napisan na jezicima Common Lisp i C, i distribuira se pod BSD licencom.
U novom izdanju:
- Kompilacija sistema samog sebe na sistemima x86-64 sa Linuxom sada proizvodi bitovno identične kros-kompilirane fasl-ove tamo gde je građevinski host cmucl, ccl, clisp ili sam sbcl.
- Optimizacije:
- Veliki broj unutrašnjih tabela, posebno onih koje se odnose na podršku za Unicode je prebačen na korišćenje hash funkcija koje su oslobođene kolizija (perfect), što je poboljšalo brzinu i smanjilo veličinu.
- FIND, POSITION, ASSOC i RASSOC sa argumentima nepromenljive sekvencije, koja sadrži simbole kao ključeve, sada se kompiliraju za pretragu koristeći hash-e oslobođene kolizija.
- Na sistemima x86-64 u kompajleru je obezbeđeno uklanjanje prelaza jump-to-jump.
- Ispravke grešaka:
- Obnovljena je mogućnost nasleđivanja i od SEQUENCE i od SB-MOP:FUNCALLABLE-STANDARD-OBJECT.
- COERCE neće konvertovati lambda forme u funkcije ako je zadato ime tipa podklasa FUNCTION.
- LOG sa argumentima double-float i racionalnim argumentima (u bilo kom redosledu) ne gubi preciznost kroz međufazni single-float argument.
- LOG po bazi 2 sa celobrojnim stepenom dvojke verovatno će dati matematički tačan odgovor.
- LOG na racionalnim brojevima koji su blizu jedinice sa brojlima bliskim stepenu dvojke će koristiti log1p i tako će gubiti manje preciznosti.
- Spoljni format utf-8 sa Unix završecima redova ažurira informacije o veličini njegovih karaktera prilikom primene brze staze za ASCII karaktere.
- Sadržaj verovatno nevalidnih dinamički postojećih cons-ova nije bio ispisan u metodi PRINT-OBJECT za THREAD objekte.
- Stalno postavljanje spoljnih ulaza za funkcije ispred bilo kojih drugih lokalnih funkcija.
- Uklanjanje neaktivnih komentara optimizacije za kvotirane forme i jedinstvene pozive APPEND na visokom broju.
- Beskočna petlja u COPY-SEQ na nizovima nulte dužine sa tipom elemenata NIL.
- Ispravka kompilacije konstruktora struktura ne gornjeg nivoa.
- Ispravke u SB-SIMD:
- Poboljšana provera granica u SB-SIMD.
- Ispravka SB-SIMD AVX f64.4-reverse.
- Ispravka mešanja SB-SIMD na AVX i SSE2.
- Ispravka vremena života u sse+xmm0 VOP-ima.
Izvor: opennet.ru
