Batteries Included?

Paul Rubin http
Tue Oct 11 03:10:01 EDT 2005


Sybren Stuvel <sybrenUSE at YOURthirdtower.com.imagination> writes:
> > I might be wrong expecting that a language whose moto is "Batteries
> > Included" would be able to produce exe files.
> 
> Indeed, you're wrong. Why would such an ability be included in Python?

distutils.exe, included in Python, in fact does have the ability to
produce .exe files, just not completely general ones.

> It's a cross platform language. What need would Mac, Linux, BSD,
> Solaris etc. users have for such a feature? 

The same need that they have for msvcrt, winreg, winsound, or the SGI
IRIX specific functions currently in the library.  The same need that
Windows users have for the Unix specific parts which are in the
library.  The same need that non-numeric programmers have for the
cmath module, which is also in the library.

> And why would it have to be included, when there is an easy solution
> just around the corner?  You prooved that it was easy enough to
> install and use by someone who just learned Python. I really don't
> see the problem here.

Um, if the TV ad for some Walkman says "batteries included" and the
batteries aren't included, you have legitimate reason to ask what's
going on.  That it's easy enough for you to go to the store and buy
batteries separately is irrelevant.  You didn't get what was
advertised.

Now a Windows .exe installer wasn't one of the advertised features of
Python and maybe there's good reasons to leave it out, but its
platform specificness is not one of those reasons.  There's already
plenty of platform specific stuff in Python.

Personally I think including a .exe packager in Python would be a
great idea.  As a Linux user I can't easily run Windows-specific
utilities like Inno Setup.  So I don't have a good way to make .exe's
from my Python code that Windows users can easily run.  Having a cross
platform .exe packager included with Python would be useful the same
way cross compilers are useful.  I'm using an x86 computer but I can
easily configure gcc to produce ARM code.  Why shouldn't my Linux
Python installation be able to produce Windows .exe's?



More information about the Python-list mailing list