Revision 23 as of 2008-08-26 19:45:15

Clear message

IronPython

IronPython is [http://hugunin.net/index.html JimHugunin's] implementation of Python on the .NET CLR.

The project has a [http://www.codeplex.com/Wiki/View.aspx?ProjectName=IronPython workspace] where you can get news and download the latest version.

Version 2 (which uses the Dynamic Language Runtime, a framework for writing dynamic languages for .NET which was abstracted out of IronPython 1) is part of Silverlight 2. This means that IronPython can be used for client-side scripting in the browser.

Mozilla are working on porting the DLR (well, the underlying Core CLR that it uses in fact) to run on their Tamarin JIT. This should mean that IronPython will also run in future versions of Firefox. (See [http://wiki.mozilla.org/Tamarin:IronMonkey IronMonkey]).

IronPython is actually a Python compiler. It compiles Python code to in memory assemblies before execution (which can be saved to disk, making binary only distributions possible).

Performance is comparable to CPython - much faster for some things (where it can take advantage of the JIT compiler in the underlying platform), but slower for other things (particularly the built in container types where a lot of work has been done on optimising the CPython types).

Reasons that CPython programmers might be interested in IronPython include:

A book on IronPython is now available via the Manning Early Access Program: [http://www.ironpythoninaction.com/ IronPython in Action].

A useful resource for IronPython code examples, is the [http://www.ironpython.info IronPython Cookbook].

Other Python-Like Languages for .NET/Mono

Some other Python-like languages for .NET and Mono include:

Accessing .NET from CPython

[http://www.zope.org/Members/Brian/PythonNet/index_html Python for .NET] is the reverse of IronPython, it lets you access .NET assemblies from CPython.


See also: PythonAndParrot, LoGix, IronPython IDE

Unable to edit the page? See the FrontPage for instructions.