d a bunch from doing it.  Here are some of the main things
I learned:</p>

<ol>

<li><b>Interpreters are a better way to bootstrap than
metacompilers.</b> Instead of writing a compiler for a subset of
Scheme in that subset, I should have written an interpreter in
standard Scheme (or whatever) and a metacompiler in the language
implemented by the interpreter.  (This is what Darius Bacon did with
"ichbins".)  Interpreters are a lot simpler than compilers, especially
if they don't have to run fast, and especia