Jump to content

SCM (Scheme implementation)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Tea2min (talk | contribs) at 07:14, 22 August 2007 (Category:Scheme compilers and Category:Scheme interpreters are already sub-categories of Category:Scheme programming language.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
SCM
Developer(s)Aubrey Jaffer, Radey Shouman, Tanel Tammet (Hobbit)
Stable release
Repository
Operating systemCross-platform
Standard(s)R4RS, R5RS, IEEE P1178
TypeProgramming language
LicenseGPL
Websiteswiss.csail.mit.edu/~jaffer/SCM

SCM is a free software Scheme implementation in C written by Aubrey Jaffer, the same author as the SLIB Scheme library and the JACAL interactive symbolic mathematics program. It conforms to the R4RS, R5RS, and IEEE P1178 standards. It runs on many different architectures such as Amiga, Atari-ST, Mac OS (SCM Mac), MS-DOS, OS/2, NOS/VE, Unicos, VMS, Unix and similar systems.

SCM includes Hobbit, the Scheme-to-C compiler originally written by Tanel Tammet. Hobbit generates C files whose binaries can be dynamically or statically linked with a SCM executable. SCM includes linkable modules for SLIB features sequence comparison, arrays, records, and byte-number conversions; and modules for POSIX system calls and network sockets, readline, ncurses, and Xlib.

On some platforms SCM supports unexec (developed for Emacs and bash), which dumps an executable image from a running SCM. This results in very low latency (12.ms) startup for SCM.

SCM developed from SIOD circa 1990. GNU Guile developed from SCM circa 1994.