What is Scheme written in?
What Scheme is used for
Scheme is a minimalist, elegant dialect of Lisp, central to computer-science education and language research, and embedded as a scripting layer in some applications.
Notable use: the classic SICP curriculum, and GNU Guile as an extension language (e.g. in GNU tools).
Quick Facts
- Designed by
- Guy L. Steele Jr. and Gerald Jay Sussman
- First released
- 1975
- Typing
- dynamic
- Filename extension
- .scm, .ss
- Website
- www.scheme-reports.org
About Scheme
Scheme is a dialect of the Lisp programming language. It is a dynamically typed and garbage-collected language that is executed directly by an interpreter. It supports functional and multi-paradigm programming.
Scheme first appeared in 1975 and was designed by Guy L. Steele Jr. and Gerald Jay Sussman. Scheme is now used mainly in specialized niches and by dedicated communities.
How Scheme is implemented
In the Language Lineage dataset, Scheme is self-hosting, so its own compiler is written in Scheme itself and its runtime is implemented in C. Reaching self-hosting, where a language is mature enough to compile itself, is a milestone that proves the language can handle a large, real-world program.
Scheme in the language family tree
Scheme drew on ideas from Lisp and went on to influence Racket, Clojure, Elixir, Rust, JavaScript, and GNU Guile.
Sources: Wikipedia · Wikidata · Official site
Frequently Asked Questions
Evidence Sources
- https://en.wikipedia.org/wiki/Scheme_(programming_language)
- https://racket-lang.org/
- https://clojure.org/about/rationale
- https://en.wikipedia.org/wiki/Elixir_(programming_language)
- https://en.wikipedia.org/wiki/Rust_(programming_language)
- https://en.wikipedia.org/wiki/JavaScript
- https://en.wikipedia.org/wiki/GNU_Guile
- https://en.wikipedia.org/wiki/MIT_Scheme
- Scheme on Wikidata (Q187560)
Discover More
Spot something wrong?
Every fact on this page is meant to be checkable. If one is wrong, say so and it becomes a dataset change, not a patch to this page.