The Dynamic Language Runtime (DLR) from Microsoft runs on top of the Common Language Runtime (CLR) and provides computer language services for dynamic languages. These services include: * A dynamic type system, to be shared by all languages using the DLR services * Dynamic method dispatch * Dynamic code generation * Hosting API The DLR is used to implement dynamic languages on the .NET Framework, including the IronPython and IronRuby projects.