Several teachers and curriculum developers have been exploring ways to introduce simulation, randomization, and bootstrapping as teaching tools for the secondary and postsecondary levels.
The first compiler for a new programming language can be written in another language (in rare cases, machine language) or can be produced using bootstrapping.