Repository logo
Log in(current)
Repository logoMIT Open ScholarshipDSpace@MIT
  1. Home
  2. Computer Science and Artificial Intelligence Lab (CSAIL)
  3. Artificial Intelligence Lab Publications
  4. AI Memos (1959 - 2004)
  5. The Revised Report on SCHEME: A Dialect of LISP

The Revised Report on SCHEME: A Dialect of LISP

Thumbnail Image
Download
Name

AIM-452.pdf

Size

11.15 MB

Format

Adobe PDF

Checksum (MD5)

13067257fce8398fb6bf3a6d253b08e4

Thumbnail Image
Download
Name

AIM-452.ps

Size

14.23 MB

Format

PostScript

Checksum (MD5)

811122f5f38b0c98d9b77ee8a3e5f534

Author(s)
Steele, Guy Lewis, Jr.
•
Sussman, Gerald Jay
Date Issued
January 1, 1978
Series/Report no.
AIM-452
Abstract
SCHEME is a dialect of LISP. It is an expression-oriented, applicative order, interpreter-based language which allows one to manipulate programs as data. It differs from most current dialects of LISP in that it closes all lambda-expressions in the environment of their definition or declaration, rather than in the execution environment. This has the consequence that variables are normally lexically scoped, as in ALGOL. However, in contrast with ALGOL, SCHEME treats procedures as a first-class data type. They can be the values of variables, the returned values of procedures, and components of data structures. Another difference from LISP is that SCHEME is implemented in such a way that tail-recursions execute without net growth of the interpreter stack. The effect of this is that a procedure call behaves like a GOTO and thus procedure calls can be used to implement iterations, as in PLASMA.
Persistent DSpace Link
http://hdl.handle.net/1721.1/6283
Repository logo
PrivacyPermissionsAccessibilityContact us
Repository logo
Notify us about copyright concerns.