>[re compiling on the fly to RISC code]>The problem with this is that you can't optimize RISC code "on the fly".
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^>The efficiency of the code generated would be little better than what you>could do with an interpreter.

On the contrary, compilation 'on-the-fly' offers optimizations not
possible with static compilation. For example, instead of compiling for
every possible case, you need only compile for the cases that actually
occur, with traps for the cases not compiled for. For languages -- e.g.,
assembly languages -- in which types may be very dynamic, this use of
context can help a lot. Craig Chambers at the U. of Washington has been
doing this for quite some time with SELF, and this tradition goes back at
least to Peter Deutsch's Smalltalk compilers.
--