[python-uk] Python Programming on Win32
Duncan Booth
duncan.booth at suttoncourtenay.org.uk
Thu Mar 4 04:29:21 EST 2004
> If you are looking at using Python with .NET then look at Mark Hammond's
> website (http://starship.python.net/crew/mhammond/) as he has some stuff
> about it... as he was involved in a prototype of a Python -> .NET compiler.
> Also have a search for Python.NET (http://zope.org/Members/Brian/PythonNet/)
> as some of the .NET functionality is available in this.
That prototype only runs on the Beta prior to the first release of
.Net 1.0, it takes quite a bit of work just to get it to run on the
released .Net. I know, because I've got a version which does run,
although it has migrated some distance from Mark Hammond's. You only
get a subset of Python functionality, and pystone runs about 20-25
times slower on the Mark's version and a bit faster on mine. Jim
Hugunin has a version which allegedly runs some benchmarks faster
than C Python, but I wouldn't hold my breath for any of these
versions to see the light of day.
Python.Net makes .Net classes available to the standard Python 2.3
interpreter. This means that you have a full standard Python, *and*
you can use most of .Net. The main drawback though is that any call
to .Net is *slow*. I tried a simple program that filled a dictionary
with strings, or filled a .Net hashtable with the same strings. The
calls to .Net worked out slower by a factor of 100. So, if you want
to use this, try to keep tight loops either entirely in Python or
entirely in .Net, don't cross the bridge too often.
--
Duncan Booth
duncan.booth at suttoncourtenay.org.uk
month=lambda p:ord("\5\10\3\6\7\13\1\11\12\2\0\4"[124864/
((sum([s*ord(c)for(c,s)in zip(p,(1,1,-1))])&31)+1)%12])
# Who said my code was obscure?
http://dales.rmplc.co.uk/Duncan
More information about the python-uk
mailing list