SCM (Scheme實現)
維基百科,自由的 encyclopedia
SCM 是Scheme程式語言的一種方言。它是由Aubrey Jaffer用C寫成,他還是SLIB(英語:SLIB) Scheme庫和JACAL交互式計算機代數(符號式數學)程序的作者。它遵守了IEEE 1178和R5RS標準。它是在GNU寬通用公共許可證(LGPL)下發行的自由及開放原始碼軟件[2]。
Quick Facts 編程範型, 語言家族 ...
![]() | |
編程範型 | 多范型: 函數式, 過程式, 元編程 |
---|---|
語言家族 | Lisp/Scheme |
設計者 | Aubrey Jaffer |
實作者 | Aubrey Jaffer, Radey Shouman, Tanel Tammet (Hobbit) |
釋出時間 | 1990年,34年前(1990) |
當前版本 |
![]() |
型態系統 | 強類型, 動態, 潛在(英語:Latent typing) |
實作語言 | C |
系統平台 | IA-32, x86-64 |
作業系統 | Cross-platform |
許可證 | LGPL |
網站 | people |
啟發語言 | |
Lisp, Scheme, SIOD | |
影響語言 | |
GNU Guile |
Close
SCM運行在很多不同的作業系統上,比如AmigaOS(還有模擬器)、Linux、Atari ST、macOS(SCM Mac)[3]、DOS、OS/2、NOS/VE(英語:NOS/VE)、UNICOS(英語:UNICOS)、VMS、Unix及類似系統。
SCM包括了Hobbit,它是最初由Tanel Tammet(英語:Tanel Tammet)在2002年書寫的一個Scheme-to-C編譯器。它生成的C文件的二進制形式可以被動態的或靜態的的連接於SCM可執行文件[4]。SCM包括可連接的用於針對SLIB特徵的模塊,就像序列比較、數組、記錄、字節-數轉換,和用於可移植作業系統接口(POSIX)系統調用和網絡套接字、Readline、curses(英語:curses (programming library))和Xlib的模塊。
在一些平台上,SCM支持unexec(為Emacs和bash開發),它從一個運行的SCM轉儲可執行的映像。這可被SCM用於快速啟動。
SCM是在大約1990年從Scheme In One Defun(SIOD)開發而來。GNU Guile在1993年從SCM開始開發。