Main Page

From bootstrapping

Welcome to the bootstrapping wiki![edit]

This wiki is about bootstrapping, i.e., building up compilers and interpreters and tools from nothing.

To use an analogy from the world of food production:

"Recipe for yogurt: Add yogurt to milk." - Anon.

In simple technical terms:

Bootstrapping is about building a compiler using tools smaller than itself, as opposed to building a compiler using an already built version of itself. The problem with the second is: Where did that prebuilt binary come from?

The short sci-fi story Coding Machines (Lawrence Kesteloot, January 2009) has bootstrapping as a theme.

Also see the homepage of the Bootstrappable project, which has pointers to a mailing list and IRC channel.


Current topics being considered include:

Other ideas that have been considered are listed on the dedicated Past Research page. There is also a list of discarded options and why.


The Groups page has links related to various areas of interest including:

  • Karger-Thompson Attack
  • Ubiquitous Implementations
  • Small C Compilers
  • Grammars, Parsing, and Term Rewriting
  • Virtual Machines, Instruction Sets
  • CPU's for Bootstrapping
  • Minimal Operating Systems
  • Biology / Other?

Helpful Links[edit]