| CARVIEW |
- Home
- Docs
- Community
- Standards
- Research
- Implementations
Scheme Research
Early research
The inaugural report on Scheme by Gerald Sussman and Guy Steele was published as a research memo by the MIT Artificial Intelligence Laboratory (now CSAIL), the birthplace of both Lisp and Scheme.
It was the first in a series of AI Memos known as "The Lambda Papers":
- SCHEME An Interpreter For Extended Lambda Calculus (AIM-349, December 1975)
- LAMBDA: The Ultimate Imperative (AIM-353, March 1976)
- LAMBDA: The Ultimate Declarative (AIM-379, November 1976)
- Compiler Optimization Based on Viewing LAMBDA as RENAME plus GOTO (May 1977)
- Debunking the "Expensive Procedure Call" Myth or, Procedure Call Implementations Considered Harmful or, LAMBDA: The Ultimate GOTO (AIM-443, October 1977)
- The Revised Report on SCHEME A Dialect of LISP (AIM-452, January 1978)
- The Art of the Interpreter or, The Modularity Complex (Parts Zero, One, and Two) (AIM-453, May 1978)
- RABBIT: A Compiler for SCHEME (A Dialect of LISP) A Study in Compiler Optimization Based on Viewing LAMBDA as RENAME and PROCEDURE CALL as GOTO (AITR-474, May 1978)
- Design of LISP-based Processors, or SCHEME: A Dielectric LISP, or Finite Memories Considered Harmful, or LAMBDA: The Ultimate Opcode (AIM-514, March 1979)
From 1980 Scheme research spread beyond MIT, and Scheme became a common "algorithm language" in academic Computer Science (replacing publication style Algol). The trope "LAMBDA: The Ultimate <x>" continues to be used in the titles of CS papers.
Bibliographies of Scheme research 1975-2007
- The Original 'Lambda Papers' (see above)
- Scheme, Language Features, and Semantics
- Macros
- Object-Oriented Programming
- Modules and Component-Oriented Programming
- Continuations and Continuation Passing Style
- Applications of Scheme
- Compiler Technology/Implementation Techniques and Optimization
- Distributed, Parallel, and Concurrent Programming
- Partial Evaluation
Research groups
Please let us know if we are missing a research group doing work in Scheme, or if there is inaccurate information here. We'd like to collect a comprehensive list of groups here.
Université de Montréal
Cisco Systems, Inc.
People: R. Kent Dybvig, Andy Keep
Location: Research Triangle Park, NC
Indiana University, Bloomington, IN
PLT
Racket, a programming language derived from Scheme, has been developed as a collaboration between these groups:
Universities
- Brown University, Providence, RI
- Brigham Young University, Provo, UT
- California Polytechnic State University, San Luis Obispo, CA
- Northeastern University, Boston, MA
- Northwestern University, Evanston, IL
- University of Utah, Salt Lake City, UT
- Worcester Polytechnic Institute
In association with
- Dorai Sitaram, GTE Labs
- Francisco Solsona, Universidad Nacional Autónoma de México
- Mike Sperber, Universität Tübingen
- Noel Welsh, LShift
Massachusetts Institute of Technology (MIT)
Project MAC, the research group of Professors Sussman and Abelson, co-authors of the textbook Structure and Interpretation of Computer Programs, uses its own implementation, MIT/GNU Scheme, for non-programming-languages research, but incidental programming languages research does make its way into the implementation.
OpenCog Foundation
OpenCog uses Scheme for scripting.
Purdue University, West Lafayette, IN
Jeffrey Mark Siskind, author of Stalin, an optimizing compiler for Scheme