IronPython is an adaptation of the Python programming language that runs on top of Microsoft's .NET framework. The language combines Python's compact, flexible, and powerful syntax and structure with the underlying support and capabilities offered by .NET.
IronPython functions as an extensibility layer for application frameworks written in a .NET language. An IronPython interpreter may be integrated relatively easily into existing .NET application frameworks. As a result, developers can use scripts written in IronPython to interact with .NET objects without having to change any of the framework's code base.
IronPython is built almost entirely in C# and makes extensive use of reflection. When a reference is made to a .NET object, IronPython automatically imports the types and methods available to that object. This results in a highly intuitive experience when working with .NET objects from within an IronPython script.
IronPython 2.0 is built on top of the Dynamic Language Runtime (DLR), which contains a Dynamic Type System (DTS) and Dynamic Language Hosting Environment (DLHE). This integration of the DLR makes it easier for programmers to code for Microsoft's Common Language Runtime (CLR). IronPython's tight integration with the CLR is due in large part to its use of Microsoft Intermediate Language (open source, IronPython was originally released under Microsoft's Share Source License. IronPython 2.0 is released under the Microsoft Public License.