De frijlitting fan SBCL 2.3.9 (Steel Bank Common Lisp), in fergese ymplemintaasje fan de programmeartaal Common Lisp, is publisearre. De projektkoade is skreaun yn Common Lisp en C, en wurdt ferspraat ûnder de BSD-lisinsje.
Yn de nije release:
- Stackallokaasje fia DYNAMIC-EXTENT jildt no net allinich foar de earste bining, mar ek foar alle wearden dy't de fariabele kin nimme (bygelyks fia SETQ). Dit makket it mooglik om bygelyks de konstruksje fan komplekse of rekursive struktueren yn in steapel troch iteraasje te ferienfâldigjen.
- Guon ynterfaces yn 'e SB-POSIX-module wurde makke om te foldwaan oan' e spesifikaasje, en in NULL-resultaat fan 'e C-bibleteek wurdt beskôge as in flater as en allinich as errno wurdt feroare troch de oprop. Yn dit gefal sil it SYSCALL-ERROR-sinjaal generearre wurde.
- Ferbettere wurking fan de DO-PASSWDS- en DO-GROUPS-makro's yn 'e SB-POSIX-module. Dizze makro's binne ûntworpen om feilich te wurkjen mei de wachtwurd- en groepdatabase.
- Stipe foar de Darwin x86- en PowerPC-platfoarms is restaurearre (mei tank oan Kirill A. Korinsky, Sergey Fedorov en barracuda156).
- Ferkearde kompilaasje reparearre dy't barde fanwegen ferkearde type konklúzje by it fermannichfâldigjen fan fixnumwearden mei fraksjewearden.
- In kompilerflater reparearre dy't yn guon gefallen barde by it kontrolearjen fan ûndertekene en net ûndertekene 64-bit wearden.
- In kompilerflater reparearre as it argumint ":INITIAL-CONTENTS" foar MAKE-ARRAY in net-sekwinsjekonstante is.
- In flater reparearre by it kompilearjen fan konvolúsjefunksjes yn in opjûne folchoarderkonstante by it werombringen fan in falske wearde fan 'e ": TEST" of ": KEY" funksjes.
- In brek reparearre by it kompilearjen fan arrayfunksjes of sekwinsjes mei arguminten dy't heul grutte sekwinsjegrutte ymplisearje.
- In kompilerflater reparearre dy't optreedt as de wearde weromjûn fan ADJUST-ARRAY net brûkt wurdt.
- Optimalisearre kompilerkonferinsje fan funksjetypen dy't efterút kinne wurde propagearre troch in tuskenfoarstelling.
- Ferbettere type konklúzje foar LDB, LOGBITP en RATIO.
- Optimalisaasjes binne makke om ûnnedige kontrôles foar grinzen te eliminearjen foar in protte gefallen fan transitive fergelikingen.
Boarne: opennet.ru
