Steel Bank Common Lisp
Steel Bank Common Lisp(SBCL)是一個自由的Common Lisp實現,它的特徵為高性能本機編譯器、Unicode支持和線程。
原作者 | William Newman從CMUCL分叉而出 |
---|---|
首次發布 | 1999年12月 | (fork)
當前版本 | 2.4.5[1](2024年5月30日,5個月前) |
源代碼庫 | |
操作系統 | Linux, Solaris, DragonFly BSD, FreeBSD, NetBSD, OpenBSD, Mac OS X, 試驗性的: Microsoft Windows |
平台 | 跨平台 |
語言 | Common Lisp |
類型 | 編譯器和運行時系統 |
許可協議 | 共有領域,其中部份在MIT許可證和BSD許可證(無廣告條款)之下 |
網站 | www |
名字「鋼鐵銀行Common Lisp」,參照了SBCL所分叉的卡內基·梅隆大學Common Lisp:安德魯·卡內基從鋼鐵工業得到財富,而安德魯·W·梅隆是一個成功的銀行家。
歷史
編輯SBCL衍生自CMUCL(在卡內基·梅隆大學創建),而它自身又派生自Spice Lisp[2],包括了1980年代在IBM RT PC上的Mach操作系統,和在三河計算公司的PERQ計算機上的早期實現。
William Newman最初在1999年12月宣稱SBCL是CMUCL的一種變體[2][3]。當時主要差異點是整潔的引導過程:CMUCL要求一個自身的預編譯的二進制可執行文件來編譯CMUCL源代碼,而SBCL在理論上支持從任何遵循ANSI的Common Lisp實現引導。
SBCL在2000年9月成為了一個SourceForge項目[2]。分叉的最初理由是繼續Newman的初始工作,而不動搖當時已經是成熟的和大量使用的實現的CMUCL。分叉是友好的,此後在兩個項目之間有大量的代碼流通和其他交叉影響。
此後SBCL吸引了一些開發者,它被移植到多個硬件架構和操作系統之上[4],並被持續的變更和增強:儘管它去除了被認為超出此項目的一些CMUCL擴展(比如Motif接口),它已經有了很多新的擴展,包括本機線程和Unicode支持。
版本1.0在2006年11發行,並被繼續活躍開發。
William Newman在2008年4月離任了SBCL項目管理者[5]。一些其他開發者臨時接管這個項目[6]。
在SBCL的10周年紀念之時,專門組建了一個工作室[7]。
在SBCL的20周年紀念之時,版本2.0.0於2019年12月29日發行,沒有重大的改變[8]。
引用
編輯- ^ sbcl-2.4.5 released.
- ^ 2.0 2.1 2.2 Hirschfeld & Rose 2008,第76頁.
- ^ http://www-jcsu.jesus.cam.ac.uk/~csr21/sbcl-0.0 (頁面存檔備份,存於網際網路檔案館) original email announcement of the fork from CMUCL
- ^ Download - Steel Bank Common Lisp. [2021-11-03]. (原始內容存檔於2022-05-05).
- ^ http://groups.google.com/group/sbcl-devel/msg/4374486c33601c7f (頁面存檔備份,存於網際網路檔案館) Mail from William Newman where he announces his resignation
- ^ http://groups.google.com/group/sbcl-devel/msg/59c9cd6ce9949b61 (頁面存檔備份,存於網際網路檔案館) Mail from Christophe Rhodes describing the interim SBCL management
- ^ SBCL's 10th Anniversary Workshop. [2021-11-03]. (原始內容存檔於2021-11-03).
- ^ Rhodes, Christophe. sbcl-2.0.0 released. sourceforge.net. [1 May 2021]. (原始內容存檔於2021-11-05).
參考文獻
編輯- Hirschfeld, Robert; Rose, Kim. Self-Sustaining Systems: First Workshop, S3 2008 Potsdam, Germany, May 15–16, 2008, Proceedings. Springer. 2008 [2021-11-03]. ISBN 978-3-540-89275-5. (原始內容存檔於2021-12-10).
延伸閱讀
編輯- Dozsa, Adrian; Gı̂rba, Tudor; Marinescu, Radu. How Lisp Systems Look Different (PDF). Proceedings of European Conference on Software Maintenance and Reengineering (IEEE). 2008: 223–232. ISBN 978-1-4244-2157-2. ISSN 1534-5351. S2CID 6368390. doi:10.1109/CSMR.2008.4493317.
- Rhodes, Christophe. Using Lisp Implementation Internals: Unportable but fun (PDF). Journal of Universal Computer Science. 2010 [2021-11-03]. (原始內容 (PDF)存檔於2016-10-03).