Petit Larceny
lth / 5 October 1998
Introduction
This is the design document for Petit Larceny, a version of Larceny that
compiles Scheme to portable C. This is not a tutorial document.
How to use it
To load the compiler back-end for Petit Larceny, start the development
environment with "nbuild -petit", or load the file
"Util/load-twobit-C.sch" into a running Larceny (when in the Larceny
build directory).
Source files
The directory Rts/Standard-C contains all the support files for Petit
Larceny that it does not share with the rest of the system. Currently
there are the following source files:
twobit.h Macros for all MAL instructions and primops.
multiply.c Portable 32x32->64 multiplication code.
millicode.h Header file for portable millicode implementation.
millicode.c Portable millicode implementation, including
dispatch loop.
arithmetic.mac Generic arithmetic macros.
arithmetic.c Generic arithmetic implementation; auto-generated
from arithmetic.mac.
expander.sch Simple macro expander for generic arithmetic macros.
There are two other files:
twobit.c.old Experimental dispatch loop, etc (from Will).
twobit.h.old Experimental instruction macros, etc (from Will).
The directory Asm/Standard-C contains the assembler back-end for Petit
Larceny. There are the following source files:
pass5p2.sch MAL code emitter procedures.
dumpheap-extra.sch Overriding procedures for heap dumper.
switches.sch Assembler switches.
$Id: noteX-petit.html 87 1998-11-25 14:38:41Z lth $
larceny@ccs.neu.edu