+++ /dev/null
-Todo:
-fasl.tex
-In good shape.
-
-object.tex
-Fairly good, but should probably be integrated with description of primitives
-in vm.tex.
-
-front.tex
-Needs updating cleanup scan. Not too bad.
-
-middle.tex
-Need VMR overview. New names for GTN/LTN? Needs general cleanup, but not too
-bad. NLX and stack are the worst.
-
-back.tex
-Pack and assembler need more info. General cleanup.
-
-
-compiler-overview.tex
-Adapt introductory material from /../fred/usr/ram/comp.mss, pap:talk.mss
-Division between ICR overview and ICR convert needs work.
-
-debugger.tex
-Needs much work. Merge much info from debug-info and debug-int. Duplicating a
-fair amount of stuff in the source may make sense where, since this is a part
-of the system that is generally interesting. And also, a part that people
-building on CMU CL might want to understand.
-
-glossary.tex
-Finish, integrate w/ main text?
-
-interpreter.tex
-Very sketchy and tentative. Needs to be fleshed out from the code.
-
-retargeting.tex
-Very rough. Needs to be merged with parts of vm.tex (call vops). Needs some
-additional text. Documentation of assembler, and all other exported
-interfaces. (Generate defined VOP descriptions from the core, keyed to files?)
-
-vm.tex
-This file should probably cease to exist, going into object, retargeting and
-introductory material. [Also other scrap in stuff/]
-
-
-[VMR and ICR overview also needed...]
-
-architecture.tex
-Missing sections on startup code, compiling, building.
-
-environment.tex
-Needs to be written: type system and info database interfaces.
-
-interface.tex
-Needs to be written: source paths and error message utilities.
-
-lowlev.tex
-Needs to be written. All manner of low-level stuff: memory layout and
-management, core file format, C interface, low-level debugging (and ldb.)
-
-\f
-Several different audiences:
- -- Curious compiler implementors (not a big priority. Downplay academic
- aspects, i.e. comparisons to other techniques, analysis of limitations,
- future work...) Compiler part can be more academic, and include some
- justifications of other design decisions.
- -- System maintainers.
- -- People retargeting the compiler.
- -- People bringing up the system in a new environment.
-
-Sys arch part:
- Package + file structure [system.txt]
- system building [compiling.txt]
- bootstrapping & cross compiling
-
-Compiler design:
- Overview (mirror structure of rest of the part)
- ICR data structure
- Front end [front.tex]
- Basic VMR data structures (no back-end stuff)
- Middle end [middle.tex]
- Back end + data structures [back.tex]
-
- Error system interface
- Source tracking
-
-Compiler retargeting:
- VM definition concepts [porting.txt, mail.txt, retargeting.tex]
- SCs, SBs, primitive-types
- Defining VOPS
- time specification
- defining
- and using the assembler
- Required VOPs [internal.txt, lowlev.txt, vm.mss]
- Standard primitives [vm.mss] (broken down by type, parallels object format
- section structure.)
- Customizing VMR conversion
- multiple hardware
- constant operands
- VM specific transforms
- special-case IR2 convert methods
-
-Run-time system:
- type system
- info database
- Data format [object.tex]
- Debugger:
- Info format [debug.txt]
- Stack parsing [debug.txt]
- Breakpoints
- Internal errors
- Signals
- Memory management: [William]
- heap Layout
- stacks
- GC
- misc implementation stuff: foreign call, assembly routines [lowlev.txt]
- LDB and low-level debugging
- core file format [William]
- fasl format [fasl.tex]