[Python-Dev] 2.4 news reaches interesting places

Phillip J. Eby pje at telecommunity.com
Thu Dec 9 19:31:15 CET 2004


At 04:39 PM 12/9/04 +0000, Gareth McCaughan wrote:
>On Wednesday 2004-12-08 22:39, Phillip J. Eby wrote:
> > The only thing that will fix the PR issue is to have a Python compiler
> > distributed as part of the language.  It doesn't matter if it doesn't
> > support the full generality of Python, or even if it doesn't speed many
> > operations up much.  The only real requirements are that it can be used to
> > produce "native" executables, and that it be an official part of the
> > language, not a separately-distributed tool like Psyco or Pyrex.  Then, it
> > will perhaps be a sufficient "security blanket" to stop people FUDding
> > about it.
>
>Unfortunately, this may not be enough. Consider, by way of counterexample,
>Common Lisp, which
>   - is compiled to native code
>   - has optional type declarations
>   - actually *does* run fast when compiled
>   - has had all these properties for years and years
>but is still almost universally decried as "slow" by people who have
>never actually used it. It's true that it doesn't (as part of the
>standard, and in the free implementations I know of) have the ability
>to generate standalone executables with filenames ending in ".exe";
>perhaps that's the key thing.

Among the great unwashed masses of Windows programmers, it probably 
is.  Look at the marketing for virtually any off-beat commercial language 
for Windows (that's still around to look at), and you will usually find a 
prominent bullet point about how it makes .exe's.  This is an incredibly 
powerful meme, though I don't entirely understand why.

I do agree that it still may not be enough; I'm just saying that it's not a 
coincidence that so many development tools for non-C languages on Windows 
all ended up deciding to feature that bullet point.  My theory is that it's 
because it's a FAQ, and it's often found on the official FAQ's of open 
source languages as well.

Granted, the scope of the question is much broader than just speed, since 
it also encompasses application distribution issues, and the social status 
of the developer.  One of the subtexts of the question is, "Can I make a 
*real* program with this thing?", or put more honestly, "Will other 
programmers laugh at me when they see my program isn't an .exe?"


>The other thing that might work is to change the name of the language
>to "C" plus optional punctuation.

Well, we could always just call it CPython, and bill it as a faster C 
implementation of that popular dynamic language for Java, Jython.  That 
way, we can also leverage the meme that C is faster than Java.  :)

Isn't it funny, by the way, that people don't go around talking about how 
slow Jython is?  At least, I haven't seen it to the extent that I've seen 
with CPython.



More information about the Python-Dev mailing list