Jack a écrit : > I understand that the standard Python distribution is considered > the C-Python. Howerver, the current C-Python is really a combination > of C and Python implementation. There are about 2000 Python files > included in the Windows version of Python distribution. I'm not sure > how much of the C-Python is implemented in C but I think the more > modules implemented in C, the better performance and lower memory > footprint it will get. > > I wonder if it's possible to have a Python that's completely (or at > least for the most part) implemented in C, just like PHP - I think > this is where PHP gets its performance advantage.
Which "performance advantage" ??? > Or maybe I'm wrong > because the core modules that matter are already in C and those Python > files are really a think wrapper. Anyhow, if would be ideal if Python > has performance similar to Java, with both being interpreted languages. <mode="pedantic"> Neither Python nor Java are "interpreted languages", because there's no such thing as an "interpreted language" - being 'interpreted' (whatever the definition of 'interpreted') is a quality of an implementation, not of a language. wrt/ to CPython and Sun's Java implementation, they are both byte-code compiled - which, according to usual definitions, is not quite the same thing !-) </mode> Now most of the performance difference is due to Java being much less dynamic than Python, which allow both the compiler and the VM to do much more optimizations - specially JIT compilation. It's quite harder to implement such optimizations for a language as dynamic as Python (IIRC, some language/compiler gurus here mentionned that even compiling Python to native binary code would not buy that much gain). Actually, it seems that taking the opposite approach - that is, trying to implement as much as possible of Python in Python - would be more promising wrt/ possible JIT compilation, cf the Pypy project. -- http://mail.python.org/mailman/listinfo/python-list