U publikua lëshimi i SBCL 2.4.0 (Steel Bank Common Lisp), një realizim i lirë i gjuhës së programimit Common Lisp. Kodi i projektit është shkruar në gjuhët Common Lisp dhe C, dhe shpërndahet nën licencën BSD.
NĂ« versionin e ri:
- Ndryshimet që bëjnë të paqartë kompatibilitetin:
- *COMPILE-VERBOSE* dhe *LOAD-VERBOSE* janĂ« caktuar nĂ« NIL kur sistemi fillon me argumentin e linjĂ«s sĂ« komandĂ«s «âscript».
- kur kërkon një skedar core, sistemi kontrollon saktësinë e asaj që është e specifikuar në /proc/self/exe, dhe, nëse /proc/self/exe është i pasaktë, kontrollon argv[0].
- sistemi nuk ofron më emra tipesh për simbolet standart (CL) ARRAY-RANK, ARRAY-TOTAL-SIZE, PATHNAME-HOST, PATHNAME-TYPE, PATHNAME-DIRECTORY, FLOAT-RADIX ose FLOAT-DIGITS.
- Përkrahja e platformave:
- Në sistemet arm64 është ofruar mundësia e aktivizimit të mbledhësit të plehrave paralel, që përdor algoritmin mark-region.
- Janë zgjidhur problemet me ndërtimin në lëshimet e reja të FreeBSD.
- U zgjidhën rrjedhjet e memories në CMS_EncryptedData_encrypt() dhe nref_nos().
- Rikuperua saktësia e daljes së llojit nga kompila në thirrjet REDUCE me «:INITIAL-VALUE» por pa «:FROM-END».
- U eliminua një gabim i kompilerit në shpalljen e «SB-EXT:MUFFLE-CONDITIONS» për një tipi të panjohur.
- Në disa raste, disassemblatori shpërndante një dalje të formatizuar keq për regjistrat.
- Pak u zvogëlua probabiliteti i përfundimit të ripërsëritur të stackut nga sistemi kur paraqitej një gabim për kumar të përfunduar të stackut;
- Optimizime:
- Në shumë raste janë eliminuar barrierat e shkrimit në mbledhësin e plehrave.
- U përmirësua dalja e tipeve për variablat iterativë me tipe të përziera.
- U hoqën vlerat iniciale të pashfrytëzuara për lidhjet LET, përmirësuar zgjedhja e tipit të regjistrave.
- U zvogëluan EQUALP/EQUAL/EQL në EQL/EQ në FIND/MEMBER, duke u bazuar në tipet hyrëse.
- U përmirësua dalja e tipit për DPB, LOGIOR.
Burimi: opennet.ru
