[Python-Dev] Python .NET (was Preventing 1.5 extensions crashing under 1.6/2.0 Python)

Mark Hammond MarkH@ActiveState.com
Wed, 12 Jul 2000 18:11:58 -0400


> "Mark Hammond" <MarkH@ActiveState.com> writes:
>
> > Sorry for the delay in responding to this stuff - Im at the MS PDC, and
> > demoing a new Python compiler that I'm suddenly allowed to
> talk about - but
> > that isnt the point of this mail :-]
>
> ?  I'm curious now!

There is a Python compiler available for the Microsoft .NET framework.
Much of the press will have details on this emerging.  A CNET article can
be found at
http://news.cnet.com/news/0-1003-200-2240702.html?tag=st.ne.1430735..ni

This new compiler could be compared, conceptually, with JPython - it is a
completely new implementation of Python.  It has a compiler that generates
native Windows .DLL/.EXE files.  It uses a runtime that consists of a few
thousand lines of C# (C-Sharp) code.  The Python programs can be debugged
at the source level with Visual Studio 7, as well as stand-alone debuggers
for this environment.  Python can sub-class VB or C# classes, and
vice-versa.

Unfortunately, there will not be a public release of their SDK for a couple
of months - so the only people able to use this compiler are people who
attended the PDC, and hence have the pre-beta SDK on their conference CDs.

The compiler is looking pretty reasonable.  pystone.py (amongst others, of
course) compiles and runs.  Im not going to tell you the results yet, 'cos
they arent too good ;-)

However, this should be quite exciting for the Python community.  The
general feel of the conference here is that the MS .NET technology is
exciting and a good thing.  I predict that the Windows community will
embrace this technology, and having Python be a first-class citizen is a
good thing!  It _is_ a radical change, so I predict it wont be really
significant on windows for a couple of years yet.

Future work on this compiler will be under the ActiveState banner.
However, the compiler and the runtime are all open source.  The compiler is
written in CPython, and uses win32com to get at the  Reflection::Emit APIs
provided by .NET.  All the existing work has been done mainly by me, with
some code and advice from Greg.  Now the NDA is lifted, I hope (some of)
the Python community will get behind this, and take advantage of the
open-sourceness of the compiler and runtime, and help us turn this into an
excellent language for this environment.

All good stuff!

Mark.