H ? « »

Language peer sets for Scheme:
United States
United States/1975
Designed 1975
1970s languages
Fourth generation
High Cold War
String and List Processing
String and List Processing/1975
String and List Processing/us


alternate simple view
Country: United States
Designed 1975
Published: 1975
Sammet category: String and List Processing

(originally "Schemer", by analogy with Planner and Conniver.) G.L. Steele & G.J. Sussman, 1975. A LISP dialect, small and uniform, with clean semantics. Scheme is applicative-order and lexically scoped, and treats both functions and continuations as first-class objects.

is a statically scoped and properly tail-recursive dialect of the LISP programming language invented by Guy Lewis Steele Jr. and Gerald Jay Sussman. It was designed to have an exceptionally clear and simple semantics and few different ways to form expressions. A wide variety of programming paradigms, including imperative, functional, and message passing style, find convenient expression in SCHEME.
SCHEME has lexical scoping, uniform evaluation rules, and uniform treatment of data types. It does not have the concept of pointers, uninitialized variables, specialized looping constructs, or explicit storage management. In SCHEME all data types are equal. What one can do to one data type, one can do to all data types. There are seven kinds of expressions: constant, variable reference, procedure creation, procedure application, conditional, assignment, and sequence.  Numbers are especially interesting in that an integer is a rational and a real is a complex.
SCHEME requires no looping constructs. Any function which calls itself in the "Tail" position is just a loop.  
SCHEME has several important advantages: it's elegantly simple in that regular structure and trivial syntax avoids "special case" confusion. It's expressiveness means that one spends little time trying to work around the language, it concentrates on what they want say rather than on how to say it. It supports a variety of styles (including OO; allows users to better match their solution style to the style of the problems to be solved.  

Related languages
Actors Scheme   inspired Influence
CONNIVER Scheme   Evolution of
microPLANNER Scheme   Evolution of
Scheme ABCL   Derivation of
Scheme Alfl   Written using
Scheme Alonzo   Influence
Scheme APROL   Derivation of
Scheme Bigloo   Extension of
Scheme Black   Augmentation of
Scheme c@t   Extension of
Scheme Chez Scheme   Implementation
Scheme Common LISP   Evolution of
Scheme CPS   intermediate language for
Scheme C-Scheme   Implementation of
Scheme Daisy   Evolution of
Scheme Dylan   Evolution of
Scheme Elk   Implementation
Scheme EuLisp   Influence
Scheme FX-87   Based on
Scheme Gambit   Variant
Scheme Hot Dog   Implementation
Scheme INFER   Dialect of
Scheme ISIS   Influence
Scheme LAML   Extension of
Scheme LIAR   Compiled by
Scheme Meroon   Based on
Scheme MultiLisp   Extension of
Scheme Oaklisp   Extension of
Scheme Orbit   Subsystem
Scheme PICO   Subset
Scheme Proxy   Written using
Scheme RABBIT   Compiled by
Scheme S++   Extension of
Scheme Scheme 48   Implementation
Scheme Scheme-Linda   Augmentation of
Scheme SchemeXerox   Implementation
Scheme STING   Dialect of
Scheme T   Extension of
Scheme XSCHEME   Augmentation of

  • Sussman, Gerald J. and Guy L. Steele, Jr (1975) Sussman, Gerald J. and Guy L. Steele, Jr "An Interpreter for Extended Lambda Calculus" MIT AIM-349 December 1975 Abstract pdf
  • Steele, G.L. (1978) Steele, G.L. et al, The Revised Report on Scheme, AI Memo 452, MIT, Jan 1978.
  • Sussman and Steele (1978) Sussman and Steele "Scheme: An interpreter for extended LAMBDA calculus" MIT AI Memo 349 December 1978
  • Kupka, I. and Wilsing, N. (1980) Kupka, I. and Wilsing, N. "Conversational Languages" John Wiley, 1980
  • Clinger, W. (1985) Clinger, W. "The Revised Revised Report on the Algorithmic Language Scheme", AI Memo 848, MIT Aug 1985.
  • Rees J. et al (1986) Rees J. et al, "The Revised^3 Report on the Algorithmic Language Scheme"
          in [SIGPLAN] (1986) SIGPLAN Notices 21(12) December 1986
  • George Springer, Daniel P. Friedman, (1989) George Springer, Daniel P. Friedman, "Scheme and the Art of Programming", McGraw-Hill, New York, 1989
          in [SIGPLAN] (1986) SIGPLAN Notices 21(12) December 1986
  • [IEEE] IEEE Standard for the Scheme Programming La (1990) [IEEE] IEEE Standard for the Scheme Programming Language, ISBN 1-55937-125-0. IEEE P1178-1990,
          in [SIGPLAN] (1986) SIGPLAN Notices 21(12) December 1986
  • Clinger, W. et al, (1991) Clinger, W. et al, "The Revised^4 Report on the Algorithmic Language Scheme" MIT (Nov 1991)
          in [SIGPLAN] (1986) SIGPLAN Notices 21(12) December 1986
  • Spinellis, Diomidis D., (1994) Spinellis, Diomidis D., "Programming Paradigms as Object Classes: A Structuring Mechanism for Multiparadigm Programming", PhD Thesis 1994 University of London
          in [SIGPLAN] (1986) SIGPLAN Notices 21(12) December 1986
  • (2002) Dick Grune's Annotated Literature Lists Extract: Review of language Extract: Review of language
          in [SIGPLAN] (1986) SIGPLAN Notices 21(12) December 1986
  • (2002) Library of Congress Subject Headings S34
          in [SIGPLAN] (1986) SIGPLAN Notices 21(12) December 1986
    Search in: Google  Google scholar  World Cat  Yahoo  Overture  DBLP  Monash bib  NZ  IEEE  ACM portal  CiteSeer  CSB  ncstrl  jstor  Bookfinder