Considering that IronPython started out as a test to see if Microsoft could run a dynamic programming language on top of the .NET Common Language Runtime (CLR), the Python port has managed to snake its way into the company's software development portfolio. After running in beta for a little less than a year, IronPython 1.0 was released at the beginning of September, and now Microsoft has decided to take things one step further by releasing an ASP.NET compatible version of the language.

With IronPython for ASP.NET, Microsoft hopes to create a model for language extensibility within their popular web-centric development platform. In a whitepaper written by David Ebbo, the Microsoft CLR dynamic language architect states that this new model will eventually serve as a generic structure for any dynamic language. "Giving ASP.NET users the choice of languages was part of the design since our first version, and this is just another step in that direction. Unlike a number of other Web platforms that support only a single language, the ASP.NET team wants to enable users to choose the language that fits them best," wrote Ebbo.

Using the same structure as C# or Visual Basic.NET for ASP.NET, IronPython pages are separated into two files: one .aspx page and one .py code-behind class. Almost every feature of ASP.NET is supported in IronPython for ASP.NET including the standard server controls and visual designer. Actually, the only thing you can't do in IronPython for ASP.NET is create web services and use IntelliSense.

The current CTP of IronPython for ASP.NET can be downloaded from the Microsoft Download Center. It comes with Visual Web Developer which is a free integrated development environment (IDE). Although the project is currently not open source, Ebbo stated that Microsoft is considering a move to the open source model in the future.

Further Reading

