Pythonwin and .NET

Ron Stephens rdsteph at earthlink.net
Mon Sep 10 21:12:30 EDT 2001


I have a question that I hope someone can partially answer. ActiveState has a beta
of Visual Python for .Net on their web site. I can not use it because I do not
have access to a beta of Microsoft's Visual Studio. However, the ActiveState beta
of Visual Python must have at least basic functionality.

How basic is that functionality? How much is left out? Are there big differences
between the language supported as Visual Python and c-Python as we know it?

Mr. Mark Hammond said

"""And on the more pragmatic side, there is still *significant* work
remaining to be done before Python on .NET is really viable, and I know
of no commercial effort underway to implement this.  From memory,
JPython took a number of years to be considered viable and to transform
into Jython."""

Mr. Hammond, why is Python on .NET not currently viable? Also, do you think
ActiveState will stick with it until it is viable?

Look, I like many on this list would love to see you, Mr. Hammond, champion Python
on .NET to the n'th degree. I would say just about anything to try to persuade you
to do so ;-)) But, I know you are a very busy person and will certainly make up
your own mind on important matters. And I think it must be discouraging sometimes
to work so hard for so long and not see all the progress you would like to see.
This is a burden you must bear alone and most of us can't participate with you at
all nor understand it at all.

But we can continue to say thank you, regardless of any and all decisions and
outcomes.

Now, I hope Alex Martelli decides to volunteer to help Mark Hammond do a PythoNet.
I hope Alex volunteers to lead an open source effort himself, should Mr. Hammond
decide to not do so. I am sure it would help the Python community immensely of
they did so. But even if they don't, Python has a great future.

Why?

1. Microsoft rules. VB and C# will therefore rule. Most of all, Visual Studio .NET
will truly rule. Java will not go away and will be very important. Perl and even
JavaScript and other scripting and glue languages have roles for quite a while.
Other great but boutique languages will make some very happy, like Oberon,
Haskell, Eiffel, etc. etc. etc. Lisp will have its own very efficient and
productive advocates until they all die. ;-)))

But other than the greater C family of C, C++, C#, and Java, only Python exists
today as a claimant to more than a token stance as an important general purpose
language that is still growing, at least significantly. Perl could be considered,
but is it really a general purpose language? Ruby has aspirations, and is probably
a fine language, and could be as general purpose as Python, maybe, in time, but it
doesn't have the time, nor does it have enough critical mass. The window is
closing. Only a language that has at least as much presence, tool availability and
maturity as Python has time, to my way of thinking , to survive the onslaught of
.NET and Java both and have the opportunity to evolve and grow into a *major*
general purpose language.

So, on one side you have Visual Studio, C# and VB (and also managed code C++),
pushed by the most powerful corporation the earth has ever seen; and on the other
side you have Java, with at least a five year head start and supported by IBM, Sun
and other major corporations.

In the middle, you have one open source language named after a troupe of
comedians, saddled with a snake's name that has sensitive and negative
connotations to some ;-)), and a BDFL who believes in it and in its community.

2. Python occupies a middle ground. Neither fish nor foul, neither Sun nor
Microsoft, but friendly to both companies and to open source advocates, used by
Windows developers (thanks to Mark Hammond!!!) and by Linux developers and by Mac
and BSD and other UNIX developers, Python is no one's enemy and everyone's friend.
To both the Microsoft camp and to the Java camp, one who is not my enemy is maybe
my friend, and at least can be tolerated and allowed to live.

3. Python is as widely usable as any language, if not wider. If successfully
integrated into .NET in the early days, even if not with 100% perfection, Python
will be *the* most widely cross platform, cross development environment,
programming language on earth. Java will not be so early and well integrated into
.NET, and even if it is, the Java community will not support Java.NET
enthusiastically, for obvious reasons. Python will move ahead of even Java in
open, cross platform support. And when will VB and C# be running on JVM's?

4. The Python community nurtures what is arguably one of the five most important
concentrations  of software development going on today:

        A. Microsoft .NET
        B. Java
        C. Linux
        D. Mono (and what about PythoNet for Mono?)
        E. Python
            i. The core Python language led by Guido
            ii. Jython
            iii. Python.Net
            iiii. Web App Servers like Zope, Webware, Skunkworks etc. etc. etc.
            iiii. Commercial IDE's PythonWare, Black Adder, and Komodo
            iiii. Open source Python GUI RAD tools and application frameworks
like:
                    a. wxPython and similar for GTK, QT, Tkinter, etc.
                    b. Boa Constructor
                    c. anygui
                    d. PythonCard

5. By continuing to grow as a friendly flower in the midst of the two giants (Java
and Microsoft), Python garners good will; and offers a neutral alternative for the
future.

But most of all, there is another reason, more important than any of the above and
all of the above reasons combined.

When we  ask ourselves, honestly, what will still be around in the year 2010, or
even in 2020, what comes to mind, and how do we predict such things? Well,
Microsoft and its preferred offerings, whatever they are, will certainly not only
be around but will be hugely important, for the foreseeable future, due to their
corporate might and will. Java will still be around, because it has so much
momentum. The C family in general will be around; C is too important to ever be
completely replaced in the foreseeable future. But surely there is a place for a
more productive, higher level language?

OS/2 was loved by many and will not be around in 2020 or even in 2010 to any
appreciable degree. So love of a technology alone is not enough to ensure
survival.

But I am quite sure that Python will be around, and important, in 2010; and I
believe it will also be so in 2020. Why? Because so many people truly love it, in
a meaningful way (they love to use it, they use it deeply, it is a tool that helps
them be significantly more productive and yes, fulfilled in their careers and in
their passions); and because so many people will continue to love it and use it in
2010, and enough people to make a difference; and because Python is an open source
community that can not be killed in the way IBM and Microsoft killed OS/2.

Python will survive because it is open source and loved. Python will matter
because loved tools that are free, if they are loved and used by enough people,
grow and thrive.

Think about it; do you believe that Python is loved enough, by enough people, in
a  useful and not just sentimental way, so that it will be used by a significant
enough number of people in 2010 to be meaningful? And if still sufficiently used
and meaningful in 2010, would not Python be situated to possibly become important,
in the middle ground of computer languages?

I actually believe this; I hope you do too.

I humbly salute and honor Guido and Mark and Alex and all of the other heroes of
the Python community. I hope some of these heroes propel Python .Net forward.

But under any circumstances, I have a sober faith that Python will do well, and I
will continue to use Python and cherish its community lovingly..

Ron Stephens







More information about the Python-list mailing list