Difference between CPython, Python for .NET and IronPython?

Diez B. Roggisch deets at nospam.web.de
Sat Feb 18 10:41:35 EST 2006


> For example, if I'm running IronPython, can I access modules such as Numeric
> and numarray?

AFAIK not. You can run pure python modules, but not extensions 
containing native code.

> As I understand it, interoperability with C# and .NET works in both
> directions with IronPython, but CPython modules cannot be imported, or? 

If they are pure python they can. However, there isn't e.g. a os-module 
in IronPython (at least on mono under MacOSX) - so I guess the situation 
is similar to Jython: you are basically limited to what the host-runtime 
delivers.

> With Python for .NET I can import the .NET Framework and continue using
> CPython modules, or?

Yes. It's a bridge. Problem is: you can't use Python-Objects in 
.NET-code, which is at least theoretically possible in IronPython (not 
sure if it has something like the jythonc of jython that makes that 
possible for jython, or if it can be done more automagically)

> 
> What is the roadmap for IronPython, will it be possible to import CPython
> modules in the near future?

I doubt it - it's just not the goal, after all you want the CLR 
precisely for _not_ needing bindings for C-libs on various platforms. 
However, I guess a goal is that you get all python modules in IronPython 
that are availablein the standard dist to make pure-python modules run 
out of the box. But I don't have any insights on that.

> One last question, is IronPython cross-platform. That is, can I use
> IronPython with Mono?


Yes, I did so under mono/MacOSX.

Diez



More information about the Python-list mailing list