From: oz@ursa.sis.yorku.ca (Ozan Yigit)
Subject: Readings [Re: Compilar Book]
Organization: York U. Student Information Systems Project
Distribution: comp
Date: Thu, 30 Jul 1992 15:43:08 GMT

Richard W. Kreutzer writes:

   Can anyone recommend a comprehensive text on compilation techniques
   of Scheme?

There is no single book, that is really comprehensive, so you will
have to combine reading various scheme sources (I recommend Gambit
[Feeley] and S48 [Rees]), tech reports and various books. For your
convenience, I include a brief biblio of those I found useful, but
I have no idea if all of the reports mentioned are still available.

I assume traditional compiler books [aho/sethi/ullman etc.] may be
of some use as well.

I hope various scheme compiler authors such as Dbyvig [Chez], Jinx
[Liar], Feeley [Gambit], Rees [Orbit], Bartlett [s->c] and Clinger
[MacScheme] etc. [to name a few] would care to comment.

Books:
      
      Daniel P. Friedman,  Mitchell Wand,  Christopher  T. Haynes.
      Essentials of  Programming Languages, MIT  Press and McGraw-
      Hill, 1992
      
      Samuel Kamin, in Programming Languages: An Interpreter-based
      Approach, Addison-Wesley, Reading, Mass., 1990.

      Harold  Abelson,  Gerald  Jay  Sussman  and  Julie  Sussman,
      Structure  and  Interpretation  of  Computer  Programs,  MIT
      Press, Cambridge, Mass., 1985.
      
Articles and Tech Reports:
      
      Mitchell Wand  and  Daniel  P.  Friedman,  Compiling  Lambda
      Expressions  Using Continuations and Factorizations, Journal
      of Computer Languages 3(1978), 241-263.
      
      Guy Lewis Steele Jr., Rabbit: a Compiler for Scheme, MIT  AI
      Memo  474, Massachusetts Institute of Technology, Cambridge,
      Mass., May 1978.
      
      Guy Lewis Steele Jr., Compiler Optimization Based on Viewing
      LAMBDA  as RENAME + GOTO, in AI: An MIT Perspective, Patrick
      Henry Winston and Richard  Henry  Brown  (ed.),  MIT  Press,
      Cambridge, Mass., 1980.
      
      Jonathan A. Rees and Norman I. Adams, T: A Dialect  of  Lisp
      or, LAMBDA: The Ultimate Software Tool, Conference Record of
      the 1982 ACM Symposium on Lisp and  Functional  Programming,
      1982, 114-122.
      
      R.  Kent  Dybvig,  C-Scheme,  Computer  Science   Department
      Technical  Report  #149  (MS  Thesis),  Indiana  University,
      Bloomington, Indiana, 1983.
      
      William Clinger, The Scheme 311  compiler:  An  Exercise  in
      Denotational  Semantics,  Conference  Record of the 1984 ACM
      Symposium on Lisp and Functional Programming, 1984, 356-364.
      
      Guillermo J. Rozas, Liar, an Algol-like Compiler for Scheme,
      S.  B.  Thesis,  Department  of  Electrical  Engineering and
      Computer Science,  Massachusetts  Institute  of  Technology,
      January 1984.
      
      David H. Bartley and John C. Jensen, The  Implementation  of
      PC  Scheme,  Proceedings  of the 1986 ACM Conference on Lisp
      and Functional Programming, 1986, 86-93.
      
      David Kranz, Richard Kelsey, Jonathan A. Rees,  Paul  Hudak,
      James  Philbin  and  Norman  I.  Adams, Orbit: An Optimizing
      Compiler for Scheme, Proceedings of the SIGPLAN Notices  '86
      Symposium  on  Compiler  Construction,  June  1986, 219-233.
      Published as SIGPLAN Notices Notices 21(7), July 1986.
      
      Marc Feeley, Deux Approches a'  L'implantation  du  Language
      Scheme,  M.Sc.  Thesis,  De'partement  d'Informatique  et de
      Recherche Ope'rationelle, University of Montreal, May 1986.
      
      R. Kent Dybvig,  Three  Implementation  Models  for  Scheme,
      Department  of  Computer  Science  Technical  Report #87-011
      (Ph.D. Dissertation), University of North Carolina at Chapel
      Hill, Chapel Hill, North Carolina, April 1987.
      
      William D. Clinger, Anne H.  Hartheimer  and  Eric  M.  Ost,
      Implementation   Strategies  for  Continuations,  Conference
      Record of the 1988 ACM Conference  on  Lisp  and  Functional
      Programming, August 1988, 124 131.
      
      David Kranz,  Orbit:  An  Optimizing  Compiler  for  Scheme,
      Computer Science Technical report #632 (Ph.D. Dissertation),
      Yale University, 1988.
      
      Joel F. Bartlett, SCHEME->C a Portable Scheme-to-C Compiler,
      Research Report 89/1, Dec. Western Research Laboratory, Palo
      Alto, California, January 1989.
      
      Marc Feeley and James S. Miller, A Parallel Virtual  Machine
      for  Efficient  Scheme  Compilation, Proceedings of the 1990
      ACM Conference on Lisp  and  Functional  Programming,  Nice,
      France, June 1990.
      
      Chris Hanson, Efficient Stack Allocation for  Tail-Recursive
      Languages,  Proceedings  of  the 1990 ACM Conference on Lisp
      and Functional Programming, Nice, France, June 1990.
      
      Robert Hieb, R. Kent Dybvig and Carl Bruggeman, Representing
      Control   in  the  Presence  of  First-Class  Continuations,
      Proceedings  of  the  SIGPLAN  Notices  '90  Conference   on
      Programming   Language   Design  and  Implementation,  White
      Plains, New York, June 1990, 66-77.
      
      Dan Teodosiu, HARE:  An  Optimizing  Portable  Compiler  for
      Scheme, ACM Sigplan Notices 26, 1 (Jan 1991).
        
enjoy.oz
---
If you can't understand it, you        | electric: oz@sis.yorku.ca
certainly can't trust it. - D. McIlroy | ph: [416] 736 2100 x33976