Ilmus SBCL 2.4.2 (Steel Bank Common Lisp), tasuta Common Lisp programmeerimiskeele realiseerimine. Projekti kood on kirjutatud Common Lisp ja C keeltes ning jagatakse BSD litsentsi alusel.
Uues vÀljaandes:
- SĂŒsteemi enda-ĂŒlevaatus x86-64 Linuxi sĂŒsteemides toob esile bitiliselt identseid ristkompileeritud fasl-e seal, kus koostamishostiks on cmucl, ccl, clisp vĂ”i SBCL ise.
- Optimeerimised:
- Suur hulk sisetabeleid, sealhulgas need, mis on seotud Unicode toe, on muudetud collision-free hash funktsioonide kasutamiseks, mis on parandanud kiirus ja vÀhendanud suurust.
- FIND, POSITION, ASSOC ja RASSOC lĂ”putu jĂ€rjestuse argumentidega, mis sisaldavad sĂŒmboleid vĂ”tmena, kompileeritakse nĂŒĂŒd otsimiseks collision-free hash-ide abil.
- x86-64 sĂŒsteemides on kompilaatoris kĂ”rvaldatud jump-to-jump ĂŒleminek.
- Vigade parandamine:
- Taasisutati vÔimalus pÀrida nii SEQUENCE'ilt kui ka SB-MOP: FUNCALLABLE-STANDARD-OBJECT'ilt.
- COERCE ei muuda lambda vorme funktsioonideks, kui esitatud tĂŒĂŒbi nimi on FUNCTION'i alamklass.
- LOG double-float ja ratsionaalsete argumentidega (sÔltumata jÀrjestusest) ei kaota tÀpsust lÀbi vahepealse single-float argumentide.
- LOG kahe baasi tÀisarvulise kahekordse tÔusu tÔenÀoliselt annab matemaatiliselt tÀpse vastuse.
- LOG ratsionaalsetest numberitest, mis on lĂ€hedal ĂŒhele ja mille numerator vĂ”i denominator on lĂ€hedal kahekordse tĂ”usu, kasutavad log1p ja seega kaotavad vĂ€hem tĂ€psust.
- UTF-8 vĂ€lisformaat Unix'i lĂ”ppudega uuendab selle sĂŒmbolite suuruste info, kui kasutatakse kiiret teed ASCII-sĂŒmbolite jaoks.
- TĂ”enĂ€oliselt ei trĂŒkitud sisu enam mitte kehtivate dĂŒnaamiliselt olemasolevate cons-ide kohta PRINT-OBJECT meetodis THREAD objektide jaoks.
- PĂŒsiv vĂ€liste funktsioonide punktide paiknemine enne muid kohalikke funktsioone.
- Eemaldatakse mitteaktiivsed optimeerimise mĂ€rkused tsitaatide vormide ja ĂŒheainsa APPEND kutse kĂ”rge kiirusel.
- LĂ”putu tsĂŒkkel COPY-SEQ nullpikkuses massiivides, mille elementide tĂŒĂŒp on NIL.
- Struktuuri konstruktorite kompileerimise parandused mitteĂŒlemises tasemes.
- Parandused SB-SIMD's:
- SB-SIMD piiri kontrollimise tÀiustamine.
- SB-SIMD AVX f64.4-reverse parandamine.
- SB-SIMD segamine AVX ja SSE2 peale.
- Eluea parandamine sse+xmm0 VOP-des.
Allikas: opennet.ru
