發布 SBCL 2.3.9,Common Lisp 語言的實現

SBCL 2.3.9(Steel Bank Common Lisp)已發布,這是 Common Lisp 程式語言的免費實作。此專案程式碼是用 Common Lisp 和 C 編寫的,並在 BSD 授權下分發。

在新版本中:

  • 現在,透過 DYNAMIC-EXTENT 進行的堆疊分配不僅適用於初始綁定,還適用於變數可以採用的所有值(例如,透過 SETQ)。例如,這使得可以透過迭代來簡化堆疊中複雜或遞歸結構的構造。
  • SB-POSIX 模組中的某些介面符合規範,並且當且僅當呼叫更改了 errno 時,C 庫中的 NULL 結果才被視為錯誤。在這種情況下,將產生 SYSCALL-ERROR 訊號。
  • 改進了 SB-POSIX 模組中 DO-PASSWDS 和 DO-GROUPS 巨集的操作。這些巨集旨在與密碼和群組資料庫安全地配合使用。
  • 恢復了對 Darwin x86 和 PowerPC 平台的支持(感謝 Kirill A. Korinsky、Sergey Fedorov 和 barracuda156)。
  • 修正了將 fixnum 值乘以小數值時因錯誤類型推斷而發生的錯誤編譯。
  • 修正了檢查有符號和無符號 64 位元值時在某些情況下發生的編譯器錯誤。
  • 修正了當 MAKE-ARRAY 的“:INITIAL-CONTENTS”參數是非序列常數時的編譯器錯誤。
  • 修正了從“:TEST”或“:KEY”函數傳回錯誤值時將卷積函數編譯為給定序列常數時出現的錯誤。
  • 修正了編譯帶有意味著非常大的序列大小的參數的陣列函數或序列時的錯誤。
  • 修正了未使用從 ADJUST-ARRAY 傳回的值時發生的編譯器錯誤。
  • 可以透過中間表示向後傳播的函數類型的最佳化編譯器推斷。
  • 改進了 LDB、LOGBITP 和 RATIO 的類型推論。
  • 已經進行了優化,以消除許多傳遞比較情況下不必要的邊界檢查。

來源: opennet.ru

為具有 DDoS 保護、VPS VDS 服務器的站點購買可靠的主機 🔥 購買具備 DDoS 防護的可靠網站寄存服務,包括 VPS 和 VDS 伺服器 | ProHoster