|
ABSTRACT
The report gives a defining description of the programming language Scheme. Scheme 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 styles, find convenient expression in Scheme.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
|
 |
3
|
|
 |
4
|
|
| |
5
|
[5] John Batali, Edmund Goodhue, Chris Hanson, Howie Shrobe, Richard M. Stallman, and Gerald Jay Sussman. The Scheme-81 architecture--system and chip. In Proceedings, Conference on Advanced Research in VLSI, pages 69-77. Paul Penfield, Jr., editor. Artech House, 610 Washington Street, Dedham MA, 1982.
|
 |
6
|
|
 |
7
|
|
| |
8
|
[8] William Clinger, editor. The revised revised report on Scheme, or an uncommon Lisp. MIT Artificial Intelligence Memo 848, August 1985. Also published as Computer Science Department Technical Report 174, Indiana University, June 1985.
|
 |
9
|
|
 |
10
|
|
| |
11
|
|
 |
12
|
Will Clinger , Anne Hartheimer , Eric Ost, Implementation strategies for continuations, Proceedings of the 1988 ACM conference on LISP and functional programming, p.124-131, July 25-27, 1988, Snowbird, Utah, United States
[doi> 10.1145/62678.62692]
|
 |
13
|
|
 |
14
|
|
| |
15
|
|
| |
16
|
[16] R. Kent Dybvig and Daniel P. Friedman and Christopher T. Haynes. Expansion-passing style: a general macro mechanism. Lisp and Symbolic Computation 1(1): 53-76, June 1988.
|
 |
17
|
|
| |
18
|
|
 |
19
|
|
| |
20
|
[20] Michael A. Eisenberg. Bochser: an integrated Scheme programming system. MIT Laboratory for Computer Science Technical Report 349, October 1985.
|
| |
21
|
[21] Michael Eisenberg. Harold Abelson, editor. Programming In Scheme. Scientific Press, Redwood City, California, 1988.
|
| |
22
|
|
| |
23
|
[23] Marc Feeley. Deux approches à l'implantation du language Scheme. M.Sc. thesis, Département d'Informatique et de Recherche Opérationelle, University of Montreal, May 1986.
|
| |
24
|
|
 |
25
|
|
| |
26
|
|
| |
27
|
[27] Matthias Felleisen and Daniel P. Friedman. Control operators, the SECD-machine, and the lambda-calculus. In 3rd Working Conference on the Formal Description of Programming Concepts, pages 193- 219, August 1986.
|
| |
28
|
|
 |
29
|
|
| |
30
|
|
| |
31
|
[31] Matthias Felleisen, Daniel P. Friedman, Eugene Kohlbecker, and Bruce Duba. Reasoning with continuations. In Proceedings of the Symposium on Logic in Computer Science, pages 131-141. IEEE Computer Society Press, Washington DC, 1986.
|
| |
32
|
|
 |
33
|
Matthias Felleisen , Mitch Wand , Daniel Friedman , Bruce Duba, Abstract continuations: a mathematical semantics for handling full jumps, Proceedings of the 1988 ACM conference on LISP and functional programming, p.52-62, July 25-27, 1988, Snowbird, Utah, United States
[doi> 10.1145/62678.62684]
|
| |
34
|
[34] Carol Fessenden, William Clinger, Daniel P. Friedman, and Christopher Haynes. Scheme 311 version 4 reference manual. Indiana University Computer Science Technical Report 137, February 1983. Superseded by [40].
|
| |
35
|
|
| |
36
|
|
| |
37
|
|
 |
38
|
|
| |
39
|
[39] Daniel P. Friedman, Christopher T. Haynes, and Eugene Kohlbecker. Programming with continuations. In Program Transformation and Programming Environments, pages 263-274. P. Pepper, editor. Springer-Verlag, 1984.
|
| |
40
|
[40] D. Friedman, C. Haynes, E. Kohlbecker, and M. Wand. Scheme 84 interim reference manual. Indiana University Computer Science Technical Report. 153, January 1985.
|
 |
41
|
|
| |
42
|
|
 |
43
|
|
| |
44
|
|
 |
45
|
|
| |
46
|
|
 |
47
|
|
 |
48
|
|
| |
49
|
[49] IEEE Standard 754-1985. IEEE Standard for Binary Floating-Point Arithmetic. IEEE, New York, 1985.
|
| |
50
|
|
| |
51
|
[51] Eugene Edmund Kohlbecker Jr. Syntactic Extensions in the Programming Language Lisp. PhD thesis, Indiana University, August 1986.
|
 |
52
|
Eugene Kohlbecker , Daniel P. Friedman , Matthias Felleisen , Bruce Duba, Hygienic macro expansion, Proceedings of the 1986 ACM conference on LISP and functional programming, p.151-161, August 1986, Cambridge, Massachusetts, United States
[doi> 10.1145/319838.319859]
|
 |
53
|
Norman Adams , David Kranz , Richard Kelsey , Jonathan Rees , Paul Hudak , James Philbin, ORBIT: an optimizing compiler for scheme, Proceedings of the 1986 SIGPLAN symposium on Compiler construction, p.219-233, June 25-27, 1986, Palo Alto, California, United States
|
| |
54
|
|
 |
55
|
|
 |
56
|
|
| |
57
|
[57] MIT Department of Electrical Engineering and Computer Science. Scheme manual, seventh edition. September 1984.
|
 |
58
|
|
 |
59
|
J. W. Backus , F. L. Bauer , J. Green , C. Katz , J. McCarthy , A. J. Perlis , H. Rutishauser , K. Samelson , B. Vauquois , J. H. Wegstein , A. van Wijngaarden , M. Woodger , P. Naur, Revised report on the algorithm language ALGOL 60, Communications of the ACM, v.6 n.1, p.1-17, Jan. 1963
[doi> 10.1145/366193.366201]
|
 |
60
|
|
| |
61
|
[61] Kent M. Pitman. Exceptional situations in Lisp. MIT Artificial Intelligence Laboratory Working Paper 268, February 1985.
|
| |
62
|
[62] Kent M. Pitman. The revised Mac Lisp manual (Saturday evening edition). MIT Laboratory for Computer Science Technical Report 295, May 1983.
|
 |
63
|
|
| |
64
|
[64] Uwe F. Pleban. A Denotational Approach to Flow Analysis and Optimization of Scheme, A Dialect of Lisp. PhD thesis, University of Kansas, 1980.
|
| |
65
|
[65] Jonathan A. Rees. Modular Macros. M.S. thesis, MIT, May 1989.
|
 |
66
|
|
| |
67
|
[67] Jonathan A. Rees, Norman I. Adams IV, and James R. Meehan. The T manual, fourth edition. Yale University Computer Science Department, January 1984.
|
 |
68
|
|
 |
69
|
|
| |
70
|
[70] Guillermo a. Rozas. Liar, an Algol-like compiler for Scheme. S.B. thesis, MIT Department of Electrical Engineering and Computer Science, January 1984.
|
 |
71
|
|
| |
72
|
|
| |
73
|
[73] Brian C. Smith. Reflection and semantics in a procedural language. MIT Laboratory for Computer Science Technical Report 272, January 1982.
|
| |
74
|
|
| |
75
|
[75] Amitabh Srivastava, Don Oxley, and Aditya Srivastava. An(other) integration of logic and functional programming. In Proceedings of the Symposium on Logic Programming, pages 254-260. IEEE, 1985.
|
| |
76
|
[76] Richard M. Stallman. Phantom stacks--if you look too hard, they aren't there. MIT Artificial Intelligence Memo 556, July 1980.
|
| |
77
|
[77] Guy Lewis Steele Jr. Lambda, the ultimate declarative. MIT Artificial Intelligence Memo 379, November 1976.
|
 |
78
|
|
 |
79
|
|
| |
80
|
|
| |
81
|
[81] Guy Lewis Steele Jr. Compiler optimization based on viewing LAMBDA as RENAME + GOTO. In AI: An MIT Perspective. Patrick Henry Winston Richard Henry Brown, editor. MIT Press, 1980.
|
 |
82
|
|
| |
83
|
|
| |
84
|
[84] Guy Lewis Steele Jr. and Gerald Jay Sussman. Lambda, the ultimate imperative. MIT Artificial Intelligence Memo 353, March 1976.
|
| |
85
|
[85] Guy Lewis Steele Jr. and Gerald Jay Sussman. The revised report on Scheme, a dialect of Lisp. MIT Artificial Intelligence Memo 452, January 1978.
|
| |
86
|
[86] Guy Lewis Steele Jr. and Gerald Jay Sussman. The art of the interpreter, or the modularity complex (parts zero, one, and two). MIT Artificial Intelligence Memo 453, May 1978.
|
 |
87
|
|
 |
88
|
Guy Lewis Steele, Jr. , Gerald Jay Sussman, The dream of a lifetime: A lazy variable extent mechanism, Proceedings of the 1980 ACM conference on LISP and functional programming, p.163-172, August 25-27, 1980, Stanford University, California, United States
[doi> 10.1145/800087.802802]
|
 |
89
|
|
| |
90
|
[90] Gerald Jay Sussman. Lisp, programming and implementation. In Functional Programming and its Applications . Darlington, Henderson, Turner, editor. Cambridge University Press, 1982.
|
| |
91
|
[91] Gerald Jay Sussman and Guy Lewis Steele Jr. Scheme: an interpreter for extended lambda calculus. MIT Artificial Intelligence Memo 349, December 1975.
|
| |
92
|
[92] Gerald Jay Sussman, Jack Holloway, Guy Lewis Steele Jr., and Alan Bell. Scheme-79--Lisp on a chip. IEEE Computer 14(7):10-21, July 1981.
|
| |
93
|
|
| |
94
|
[94] Texas Instruments, Inc. TI Scheme Language Reference Manual. Preliminary version 1.0, November 1985.
|
 |
95
|
Steven R. Vegdahl , Uwe F. Pleban, The runtime environment for Scheme, a Scheme implementation on the 88000, Proceedings of the third international conference on Architectural support for programming languages and operating systems, p.172-182, April 03-06, 1989, Boston, Massachusetts, United States
|
 |
96
|
|
 |
97
|
|
 |
98
|
|
 |
99
|
|
| |
100
|
[100] Mitchell Wand and Daniel P. Friedman. Compiling lambda expressions using continuations and factorizations. Journal of computer Languages 3:241-263, 1978.
|
| |
101
|
[101] Mitchell Wand and Daniel P. Friedman. The mystery of the tower revealed. a non-reflective description of the reflective tower. In Meta-level Architectures and Reflection, pages 111-134. P. Maes and D. Nardi, editor. Elsevierr Sci. Publishers B.V. (North Holland), 1988.
|
CITED BY 76
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Michael Sperber , Peter Thiemann , Hervert Klaeren, Distributed partial evaluation, Proceedings of the second international symposium on Parallel symbolic computation, p.80-87, July 20-22, 1997, Maui, Hawaii, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Daniel E. Stevenson , Margaret M. Fleck, Programming language support for digitized images or, the monsters in the closet, Proceedings of the Conference on Domain-Specific Languages on Conference on Domain-Specific Languages (DSL), 1997, p.21-21, October 15-17, 1997, Santa Barbara, California
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Peter Van Roy , Per Brand , Denys Duchier , Seif Haridi , Christian Schulte , Martin Henz, Logic programming in the context of multiparadigm programming: the Oz experience, Theory and Practice of Logic Programming, v.3 n.6, p.717-763, November 2003
|
|
|
|
|
|
|
|
|
Robert Bruce Findler , John Clements , Cormac Flanagan , Matthew Flatt , Shriram Krishnamurthi , Paul Steckler , Matthias Felleisen, DrScheme: a programming environment for Scheme, Journal of Functional Programming, v.12 n.2, p.159-182, March 2002
|
|
|
H. Abelson , R. K. Dybvig , C. T. Haynes , G. J. Rozas , N. I. Adams Iv , D. P. Friedman , E. Kohlbecker , G. L. Steele, Jr. , D. H. Bartley , R. Halstead , D. Oxley , G. J. Sussman , G. Brooks , C. Hanson , K. M. Pitman , M. Wand, Revised Report on the Algorithmic Language Scheme, Higher-Order and Symbolic Computation, v.11 n.1, p.7-105, August 1998
|
|
|
|
|
|
|
|
|
|
|
|
Michael Sperber , R. kent Dybvig , Matthew Flatt , Anton Van straaten , Robby Findler , Jacob Matthews, Revised6 report on the algorithmic language scheme, Journal of Functional Programming, v.19 n.S1, p.1-301, August 2009
|
|