Notice the big difference, with respect to binding times, between 3-Lisp reflective towers and lookup apply ones. Although 3-Lisp reflective processors are all the same, and known prior to execution, the actual code run at each level is not completely known until run-time because reflective procedures can effectively add code into higher-level interpreters. In order to be known at compile time, not only the code of 3-Lisp interpreters must be static (which they are, by design), but the reflective procedures that may be called within them must also be determined statically. In the lookup apply case, there is no reflective procedure, so an interpreter is known as soon as its code is known.