9

I am currently looking for a possible way to integrate my C++/C# application with some of my Python scripts. At this point, IronPython seems like the way to go.

However, before proceeding, I would like to ask the following:

  • How stable is IronPython right now? Is it ready for production use? Are there any known major quirks/bugs?
  • What is the future of IronPython? Will it be maintained for bug fixes? Will there be new versions?

I am particularly interested in using IronPython to run a Python web framework such as Django or Web2py. I am very well aware that current Python web frameworks don't play very well with it. Therefore any insights on the future of IronPython's web framework support would be much appreciated as well.

Community
  • 1
  • 1
jsalonen
  • 29,593
  • 15
  • 91
  • 109
  • should be community wiki – SilentGhost Oct 07 '10 at 12:05
  • Possibly, but lets see how this develops. At this point I'm more concerned about whether I get any answers. – jsalonen Oct 07 '10 at 13:18
  • 3
    From 2013's point of view, what is the future of IronPython? Shortly after @jsalonen asked this question, [Microsoft withdrew from IronPython development](http://www.h-online.com/open/news/item/Microsoft-withdraws-from-IronPython-and-IronRuby-development-1123566.html) and looking at the [commit history](https://github.com/IronLanguages/main/commits/master) today not a lot is happening. Any re-evaluation on the future of IronPython needed? – Christian Apr 04 '13 at 12:55

1 Answers1

9

To answer your second question, yes, IronPython will be developed in the future. Right now, there is a "language change moratorium" on CPython, the main branch of Python (see PEP 3003. The Python folks want CPython, Jython, and other branches of Python development to catch up with CPython, and they've been doing just that. If all goes as planned, by the time the moratorium is over, IronPython and others will be up to speed and will have implementations that follow the syntax and features of Python 3.x. Also, since IronPython is backed by Microsoft and is a key part of their Dynamic Language Runtime (whatever that is), it's unlikely to get cancelled.

Right now, IronPython is making good progress. According to their svn, code is being changed fairly regularly (1 check-in every other day or so). A Python 2.7 compatible implementation is in the works, and the alpha was released July 16 (so IronPython 2.7 can be expected in the near future).

As for the stability of the interpreter, it seems rather stable. I haven't used IronPython extensively, but the 2.6.1 release behaves almost exactly like the CPython 2.6 interpreter, disregarding standard library.

A lot of the extensions for CPython don't work with IronPython. So, if you want to use Django or something like that, it's probably not smart to use IronPython because it isn't really cross-platform, doesn't work with some frameworks, and it performs worse than CPython. The real advantage to IronPython is access to everything that .NET has to offer, including ASP.NET (a web framework) and Silverlight.

If you want to use .NET, IronPython is the best route as far as scripting goes.

Rafe Kettler
  • 75,757
  • 21
  • 156
  • 151