Registration is required to access this article.
the .NET Common Language Runtime (CLR) contains a whole namespace full of classes to help us build assemblies, define types, and emit their implementations, all at run time. These classes, which comprise the System.Reflection.Emit namespace, are known collectively as "Reflection.Emit." ...
In much the same way that XML has saved us from ever again needing to design low-level file formats for our apps, Reflection.Emit technology may save us from ever again having to devise our own state machines (like regular expression engines) that are so commonplace in advanced applications.
Close your eyes, and imagine the possibilities: parsers, interpreters, state machines, static table-lookup code... All of these things and more can now be implemented as fast, native code, optimized for each individual user's platform, thus offering a level of performance never before attainable. The Age of The Interpreter might finally be over.
Chris Sells and Shawn Van Ness demonstrate the use of the .NET Reflection.Emit services that let use generate IL code on the fly. They also provide a very quick IL tutorial and discuss the concepts of validity, verifiability, and security.
Posted to cross-language-runtimes by Dan Shappir on 8/18/02; 8:39:03 AM