# SCM

> implementation of the Scheme programming language

**Wikidata**: [Q7389181](https://www.wikidata.org/wiki/Q7389181)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/SCM_(Scheme_implementation))  
**Source**: https://4ort.xyz/entity/scm

## Summary
SCM is a free software implementation of the Scheme programming language, developed by Aubrey Jaffer and part of the GNU Project, providing a Scheme interpreter for multiple operating systems.

## Key Facts
- SCM is a GNU Project package, a free software implementation of the Scheme programming language.
- Created and maintained by Aubrey Jaffer, with development starting in 1990.
- Licensed under the GNU Lesser General Public License version 3.0 or later.
- Supports stable versions like 5f4 (2024-02) and 5f3 (2020-02), with release archives available.
- Runs on operating systems including BSD, Microsoft Windows, Mac OS, OpenVMS, and others.

### FAQs
### Q: What is SCM?
A: SCM is a free software implementation of the Scheme programming language, developed by Aubrey Jaffer and part of the GNU Project.
### Q: Who developed SCM?
A: SCM was created and is maintained by Aubrey Jaffer.
### Q: What operating systems does SCM support?
A: SCM supports BSD, Microsoft Windows, Mac OS, OpenVMS, NOS/VE, and UNICOS, among others.

### Why It Matters
SCM is significant as a core implementation of the Scheme programming language, a dialect of Lisp valued for its functional programming features. As part of the GNU Project, it contributes to the free software ecosystem by offering a reliable, open-source interpreter that enables cross-platform execution of Scheme code. Its development by Aubrey Jaffer ensures adherence to the Scheme language specification, making it a trusted tool for both academic research and practical software development in the Scheme community.

### Notable For
- It is the official Scheme implementation within the GNU Project, distinguishing it from other Scheme interpreters.
- Developed by Aubrey Jaffer, who has sustained the project since its 1990 inception.
- Uses the GNU Lesser General Public License v3.0 or later, promoting community contributions and freedom.
- Maintains stable releases (e.g., 5f4 in 2024, 5f3 in 2020) with detailed release notes and archives.
- Integrated into package systems like Debian, Ubuntu, and Gentoo for widespread distribution.

### Body
#### Overview
SCM, or GNU SCM, is a free software interpreter for the Scheme programming language. It is part of the GNU Project, which focuses on providing open-source tools, and serves as a primary implementation of Scheme, enabling users to write and execute Scheme code across various platforms.

#### Development and Maintenance
Aubrey Jaffer is the primary developer and maintainer of SCM. The project began in 1990, as indicated by the inception date. The software is licensed under the GNU Lesser General Public License (LGPL) version 3.0 or later, which allows both commercial and non-commercial use while requiring derivative works to be licensed similarly.

#### Version History
SCM has multiple stable versions, with recent releases including 5f4 (released February 2024) and 5f3 (released February 2020). Each version includes updates to the interpreter, bug fixes, and enhancements to the Scheme language implementation. Release notes and archives are available from the official source code repository, which uses CVS and ViewVC for version control.

#### Operating Systems and Platforms
SCM is designed to run on a variety of operating systems, including:
- BSD (Berkeley Software Distribution) variants
- Microsoft Windows
- Mac OS operating systems
- OpenVMS
- NOS/VE (a vintage operating system)
- UNICOS (a supercomputer operating system)

These platforms are supported through specific package configurations, such as FreeBSD ports, NetBSD packages, and Debian source packages, ensuring compatibility across different environments.

#### Community and Resources
Users and developers can access resources like the user manual (available in PDF format under the GNU Free Documentation License), mailing list archives for discussions, and an issue tracker on Savannah GNU for reporting bugs. The project also maintains a website with documentation and download links, providing a central hub for community engagement.

```json
{
  "@context": "https://schema.org",
  "@type": "Thing",
  "name": "SCM",
  "description": "Implementation of the Scheme programming language",
  "url": "http://people.csail.mit.edu/jaffer/SCM",
  "sameAs": [
    "/m/0277zlt",
    "https://en.wikipedia.org/wiki/SCM_(Scheme_implementation)"
  ],
  "additionalType": "Programming Language Implementation",
  "license": "https://opensource.org/licenses/lgpl-3.0"
}

## References

1. Free Software Directory
2. [Source](https://people.csail.mit.edu/jaffer/scm.pdf)
3. [Scheme release scm-5f3 available. 2020](https://lists.gnu.org/archive/html/scm-discuss/2020-02/msg00000.html)
4. [This message announces the availability of Scheme release scm-5f4. 2024](https://lists.gnu.org/archive/html/scm-discuss/2024-02/msg00000.html)
5. [Source](https://ftp.gnu.org/gnu/scm/)
6. [Scheme implementation release scm-5f1. 2013](https://lists.gnu.org/archive/html/scm-discuss/2013-05/msg00000.html)
7. [Source](https://cvs.savannah.gnu.org/viewvc/scm/scm/ChangeLog?revision=1.775&view=markup#l723)
8. [Source](https://packages.debian.org/source/bookworm/scm)
9. [Source](https://lists.gnu.org/mailman/listinfo/scm-discuss)