-*- Mode:Text -*-                PS9-GIDE.TXT


		     MASSACHUSETTS INSTITUTE OF TECHNOLOGY
	   Department of Electrical Engineering and Computer Science
	   6.001---Structure and Interpretation of Computer Programs
			      Fall Semester, 1992

				 Problem Set 9

		  --------------------------------------------
		    A Reader's Guide to the PS9 Code Listing
		  --------------------------------------------

There is a ton o' code to accompany this problem set.  Most of it is derived in
careful detail in the course notes.  We have made only a few modifications and
extensions to the code in the notes, so don't be overwhelmed by the sheer
volume of this listing.  Following is a roadmap to what is in this massive
handout, in the order in which it appears in this listing.


-------------------------------------------------------------------------------
PS9-GIDE.TXT -- This file. [We spelled this GIDE 'cause GUIDE was too long for
                a DOS filename... and 'cause we like the novels of Andre Gide.]
-------------------------------------------------------------------------------
PS9-LOAD.SCM -- The file which loads all this code in just the right order
                with just the right magic. This is the load file used on the
                HP Snakes in the lab.
-------------------------------------------------------------------------------

 *****************************************************************************
 ** NOTE THAT THIS PROBLEM SET CODE CANNOT BE EXECUTED ON ENVIRONMENTALLY   **
 ** IMPOVERISHED SCHEME SYSTEMS, SUCH AS MACSCHEME AND PSEUDOSCHEME. Sorry. **
 *****************************************************************************

-------------------------------------------------------------------------------
PS9-ECEV.SCM -- The Explicit Control Evaluator. Essentially the same as in the
                notes but with some tracing mechanisms provided.
-------------------------------------------------------------------------------
PS9-COMP.SCM -- The Compiler that produces code for the register machines that
                we simulate. Virtually identical to the code in the notes.
-------------------------------------------------------------------------------
PS9-RSIM.SCM -- The Register Machine Simulator code, extended with various
                performance-monitoring hooks and debugging probes (See notes).
-------------------------------------------------------------------------------
PS9-SNTX.SCM -- Our ducky data abstractions to insulate ourselves from the
                syntax of our evaluator input expressions (what READ yields).
-------------------------------------------------------------------------------
PS9-DEFM.SCM -- Magic incantations to make this code run on MIT Scheme.
                Needless to say, you don't need to understand this magic.
-------------------------------------------------------------------------------
 * * * * * * * The important stuff is below this line * * * * * * * * * * * * *
-------------------------------------------------------------------------------
PS9-PRIM.SCM -- Extension to our compiler to ``open code'' 1&2-argument primitive
                procedures much like the strategy described in exercise 5.33.
-------------------------------------------------------------------------------
