GNU Guile 3.0.0 發布了,這是新的穩定 3.0 版本系列中的第一個版本。
Guile 是 Scheme 程式語言的一種實現,除了實現 R5RS、R6RS 和 R7RS Scheme 標準外,Guile 還有包括以下能力:POSIX 系統調用、網絡支持、多線程、動態連結、外部函數調用接口、強大的字符串處理與 HTTP 客戶端/伺服器實現。Guile 可以作為腳本解釋器、轉換 VM 字節碼的編譯器與 Scheme 交互運行。同時它還被打包為一個庫,這樣可以讓應用程式輕鬆地包含完整的 Scheme 解釋器/VM。
Guile 3.0 的主要新特性是 JIT 本地代碼生成,其可以提高所有程序的性能。與 2.2 相比,微基準測試的性能總體上高出一倍左右,在某些基準測試情況下速度高達 32 倍。
值得注意的是,對於較大的用例,這一特性最終使 Scheme 中編寫的「eval」性能快於Guile 1.8 時代使用 C 語言編寫的「 eval」的性能 。
3.0 的其它新特性包括支持詞彙上下文中的交錯定義和表達式、結構化異常的原生支持,更好地支持 R6RS 和 R7RS Scheme 標準,同時做了不少優化。
同時,Guile 3.0.0 與 3.0 系列中其它所有接下來發布的版本(如 2.2)都可以與其它穩定版本並行安裝。
詳情查看:
https://www.gnu.org/software/guile/news/gnu-guile-300-released.html
https://lists.gnu.org/archive/html/guile-devel/2020-01/msg00080.html