Scheme

E24474

Scheme is a minimalist, lexically scoped dialect of the Lisp programming language known for its elegant functional programming model and powerful macro system.

All labels observed (5)

Label Occurrences
Scheme canonical 34
Scheme programming language 6
Chibi Scheme 1

How this entity was disambiguated

Statements (67)

Predicate Object
instanceOf Lisp dialect
programming language
abbreviation Scheme
category high-level programming language
designedBy Gerald Jay Sussman
Guy L. Steele Jr.
evaluationStrategy applicative order
fileExtension .scm
.ss
firstAppearedIn Computer Science and Artificial Intelligence Laboratory (CSAIL)
surface form: MIT AI Lab
hasFeature call-with-current-continuation
continuations
dynamic typing
first-class procedures
garbage collection
homoiconicity
hygienic macros
lexical scoping
minimal core language
proper tail recursion
s-expression syntax
tail-call optimization requirement
hasSyntax prefix notation
influenced Lisp programming language
surface form: Clojure

Common Lisp
Bob Dylan
surface form: Dylan

JavaScript
Lua
Racket
Rust macro system
influencedBy ALGOL 58
surface form: ALGOL

ISWIM
Lisp programming language
surface form: Lisp
macroSystemType hygienic macro system
notableImplementation Bigloo
Chez Scheme
Scheme self-linksurface differs
surface form: Chibi Scheme

Chicken Scheme
Gambit Scheme
GNU Guile
surface form: Guile Scheme

Kawa
MIT Scheme
Racket
Scheme48
TinyScheme
notableTextbook Structure and Interpretation of Computer Programs
paradigm functional programming
imperative programming
meta-programming
scopeType lexical scope
standardBody Scheme self-linksurface differs
surface form: Scheme Language Steering Committee
standardizedBy Revised^n Report on the Algorithmic Language Scheme
standardVersion Scheme self-linksurface differs
surface form: R5RS

Revised^n Report on the Algorithmic Language Scheme
surface form: R6RS

Revised^n Report on the Algorithmic Language Scheme
surface form: R7RS-small
supports closures
first-class continuations
higher-order functions
macro system
recursion
tail-recursive style
typingDiscipline dynamic typing
usedFor computer science education
embedded systems
language research
scripting
yearIntroduced 1975

How these facts were elicited

Referenced by (43)

Full triples — surface form annotated when it differs from this entity's canonical label.

JavaScript influencedBy Scheme
Algol 68 influenced Scheme
ECMAScript influencedBy Scheme
Scheme standardVersion Scheme self-linksurface differs
this entity surface form: R5RS
Scheme standardBody Scheme self-linksurface differs
this entity surface form: Scheme Language Steering Committee
Scheme notableImplementation Scheme self-linksurface differs
this entity surface form: Chibi Scheme
lambda calculus influenced Scheme
GNU Guile supportsLanguage Scheme
R inspiredBy Scheme
Lisp programming language notableImplementation Scheme
subject surface form: Lisp
Lisp programming language influenced Scheme
subject surface form: Lisp
Lua influencedBy Scheme
Gerald Jay Sussman coDeveloperOf Scheme
this entity surface form: Scheme programming language
Racket family Scheme
Racket influencedBy Scheme
Revised^n Report on the Algorithmic Language Scheme defines Scheme
this entity surface form: Scheme programming language
Chicken Scheme implements Scheme
this entity surface form: Scheme programming language
Bigloo implements Scheme
Scheme48 implements Scheme
Guy L. Steele Jr. coDesigned Scheme
this entity surface form: Scheme programming language
Kawa supportsLanguage Scheme
Abelson knownFor Scheme
subject surface form: Hal Abelson
this entity surface form: Scheme programming language
Abelson mainSubject Scheme
subject surface form: Structure and Interpretation of Computer Programs
this entity surface form: Scheme programming language
Guile programmingLanguage Scheme
Clojure influencedBy Scheme