ĂshtĂ« publikuar versioni SBCL 2.4.2 (Steel Bank Common Lisp), njĂ« implementim i lirĂ« i gjuhĂ«s sĂ« programimit Common Lisp. Kodi i projektit Ă«shtĂ« shkruar nĂ« Common Lisp dhe C dhe shpĂ«rndahet nĂ«n licencĂ«n BSD.
NĂ« versionin e ri:
- Vetë-kompilimi i sistemit në platformat x86-64 me Linux tani prodhon fasl të kryq-kompiluara bit-për-bit identike në rastet kur hosti i ndërtimit është cmucl, ccl, clisp ose vetë sbcl.
- Optimizime:
- Një numër i madh tabelash të brendshme, veçanërisht ato që lidhen me mbështetjen e Unicode, janë kaluar në përdorimin e funksioneve hash pa kolizione (perfect), gjë që ka përmirësuar shpejtësinë dhe ka ulur madhësinë.
- FIND, POSITION, ASSOC dhe RASSOC me argumente sekuencash të pandryshueshme që përmbajnë simbole si çelësa tani kompilohen për kërkim duke përdorur hash pa kolizione.
- Në sistemet x86-64, në kompajler është siguruar eliminimi i kalimeve jump-to-jump.
- U zgjidhën rrjedhjet e memories në CMS_EncryptedData_encrypt() dhe nref_nos().
- ĂshtĂ« rikthyer mundĂ«sia e trashĂ«gimisĂ« njĂ«kohĂ«sisht nga SEQUENCE dhe nga SB-MOP:FUNCALLABLE-STANDARD-OBJECT.
- COERCE nuk do të konvertojë forma lambda në funksione nëse emri i caktuar i tipit është nënklasë e FUNCTION.
- LOG me argumente double-float dhe argumente racionalë (në çfarëdo renditjeje) nuk humbet saktësi përmes një argumenti të ndërmjetëm single-float.
- LOG me bazë 2 për një fuqi të plotë të numrit dy ka më shumë gjasa të japë një rezultat matematikisht të saktë.
- LOG për numra racionalë pranë njësisë, me numërues ose emërues afër një fuqie të dyshit, do të përdorë log1p dhe kështu do të humbasë më pak saktësi.
- Formati i jashtëm utf-8 me përfundime rreshti Unix përditëson informacionin për madhësitë e karaktereve kur përdoret rruga e shpejtë për buffer-at me karaktere ASCII.
- Nuk shtypej përmbajtja e cons-eve dinamike me gjasë jo më të vlefshme në metodën PRINT-OBJECT për objektet THREAD.
- Vendosje e përhershme e pikave të jashtme të hyrjes për funksionet përpara çdo funksioni tjetër lokal.
- Heqja e njoftimeve joaktive të optimizimit për forma të cituara dhe thirrje të vetme të APPEND në shpejtësi të lartë.
- Cikël i pafund në COPY-SEQ mbi vargje me gjatësi zero me tip elementi NIL.
- Rregullim i kompilimit të konstruktorëve të strukturave jo në nivelin e sipërm.
- Rregullime në SB-SIMD:
- Përmirësim i kontrollit të kufijve në SB-SIMD.
- Rregullim i SB-SIMD AVX f64.4-reverse.
- Rregullim i përzierjes në SB-SIMD për AVX dhe SSE2.
- Rregullim i kohëzgjatjes së jetës në VOP-et sse+xmm0.
Burimi: opennet.ru
