[Page 123]

113 References [Aho, Johnson, and Ullman] '

Aho, A.V., Johnson, S.C., and Ullman, J.D. "Code Generation for Expressions with Common Subexpressions." J. ACM 24, 1 (January 1977), 146-160.

[Allen and Cocke] Allen, Frances E., and Cocke, John. "A Catalogue of Optimizing Transformations." In Rustin, Randall (ed.), Design and Optimization of Compilers. Proc. Courant Comp. Sci. Symp. 5. Prentice-Hall (Englewood Cliffs, N.J., 1972).

Rabbit: A Compiler for Scheme/References

[Bobrow and wegbreit] Bobrow, Daniel G. and Wegbreit, Ben. "A Model and Stack Implementation of Multiple Environments." CACM 16, 10 (October 1973) pp. 591-603.

Rabbit: A Compiler for Scheme/References

[Carter] Carter, J. Lawrence. "A Case Study of a New Code Generation Technique for Compilers." Comm. ACM 20, 12 (December 1977), 914-920.

Rabbit: A Compiler for Scheme/References

[Church] Church, Alonzo. The Calculi of Lambda Conversion. Annals of Mathematics Studies Number 6. Princeton University Press (Princeton, 1941). Reprinted by Klaus Reprint Corp. (New York, 1965).

[Coleman] Coleman, Samuel S. JANUS: A Universal Intermediate Language. Ph.D.

- thesis. University of Colorado (1974).

[DEC] Digital Equipment Corporation. DecSystem 10 Assembly Language Handbook (third edition). (Maynard, Mass., 1973).

[Declarative] Steele, Guy Lewis Jr. LAMBDA: The Ultimate Declarative. AI Memo 379.

MIT Al Lab (Cambridge, November 1976).

[Dijkstra] Dijkstra, Edsger W. A Discipline of Programming. Prentice-Hall (Englewood Cliffs, N.J., 1976).

[Doyle] Doyle, Jon, de Kleer, Johan, Sussman, Gerald Jay, and Steele, Guy L.

Jr. "AMORD: A Dependency-Based Problem-Solving Language." Submitted to the 1977 SIGART/SIGPLAN Artificial Intelligence and Programming Languages Conference.

[Geschke] Geschke, Charles M. Global Program Optimizations. Ph.D. thesis.

Carnegie-Mellon University (Pittsburgh, October 1972).

[Page 124]

114_ [Gries] Gries, David. Compiler Construction for Digital Computers. John Wiley & Sons (New York, 1971), 252-257.

[Hewitt] Hewitt, Carl. "Viewing Control Structures as Patterns of Passing Messages." AI Journal 8, 3 (June 1977), 323-364.

[Hewitt and Smith] Hewitt, Carl, and Smith, Brian. "Towards a Programming Apprentice."

IEEE Transactions on Software Engineering SE-1, 1 (March 1975), Z6-45.

[Imperative] Steele, Guy Lewis Jr., and Sussman, Gerald Jay. LAMBDA: The Ultimate Imperative. AI Memo 353. MIT AI Lab (Cambridge, March 1976).

[Johnsson] Johnsson, Richard Karl. An Approach to Global Register Allocation.

Ph.D. Thesis. Carnegie-Mellon University (Pittsburgh, December 1975).

[Landin] Landin, Peter J. "A Correspondence between ALGOL 60 and Church's Lambda-Notation." CACM 8, Z-3 (February and March 1965).

[LISP1.5M] » McCarthy, John, et al. LISP 1.5 Programmer's Manual. The MIT Press (Cambridge, 1962).

[McKeeman] McKeeman, W.M. "Peephole optimization." CACM 8, 7 (July 1965), 443-444.

[Moon] Moon, David A. MACLISP Reference Manual, Revision 0. Project MAC, MIT (Cambridge, April 1974).

[Moses] Moses, Joel. The Function of FUNCTION in LISP. AI Memo 199, MIT AI Lab (Cambridge, June 1970).

[Pratt] Pratt, Vaughan R. CGOL: an Alternative External Representation for LISP Users. Working Paper 121. MIT AI Lab (Cambridge, March 1976).

[Revised Report] Steele, Guy Lewis Jr., and Sussman, Gerald Jay. The Revised Report on SCHEME. MIT AI Memo 452 (Cambridge, January 1978).

[Reynolds] Reynolds, John C. "Definitional Interpreters for Higher Order Programming Languages." ACM Conference Proceedings 1972.

[Page 125]

[Sammet] [SCHEME] 115 Sammet, Jean E. Programming Languages: History and Fundamentals.

Prentice-Hall (Englewood Cliffs, N.J., 1969), 708-709.

Sussman, Gerald Jay, and Steele, Guy Lewis Jr. SCHEME: An Interpreter for Extended Lambda Calculus. AI Memo 349. MIT AI Lab (Cambridge, December 1975). I [Smith and Hewitt] Smith, Brian C. and Hewitt, Carl. A PLASMA Primer (draft). MIT AI Lab (Cambridge, October 1975).

[Standish] Standish, T.A., et al. The Irvine Program Transformation Catalogue.

University of California (Irvine, January 1976).

[Steele] [Stoy] Steele, Guy Lewis Jr. "Debunking the 'Expensive Procedure Call' Myth."

Proc. ACM National Conference (Seattle, October 1977),153-162.

Revised as MIT AI Memo 443 (Cambridge, October 1977).

Stoy, Joseph E. Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory; MIT Press (Cambridge, 1977).

[Teitelman] Teitelman, Warren. InterLISP Reference Manual. Revised edition.

Xerox Palo Alto Research Center (Palo Alto, 1975).