Is Python overhyped (just like Java)?
Ben Hutchings
do-not-spam-ben.hutchings at businesswebsoftware.com
Tue Apr 1 10:18:21 EST 2003
In article <x78yuwloxj.fsf at guru.mired.org>, Mike Meyer wrote:
> Roy Smith <roy at panix.com> writes:
>
>> I just make a trivial change to a single source file in a project I'm
>> working on and times how long it took to run make. It took 1 minute, 41
>> seconds. The vast majority of that time was make itself, recursing up
>> and down the directory tree to discover that nothing else had changed.
>> Had the change been to a core header file, I might have been waiting for
>> 15 minutes while make recompiled the whole world. With Python, I would
>> have been able to test my change in a matter of seconds.
>
> It's fairly well know that recursive make files are slow.
They are also incapable of expressing all the dependencies you might want.
> There are tools built to solve this problem (e.g. jam), and technics for
> using include's in make files so the entire tree is processed by one
> make. Either one results in significantly faster builds.
Yes. I came up with an include-based makefile system that would often
require make to read rules from a hundred or so files (it would read some
common files several times over with different substitutions) and to
examine a thousand or so source and dependency files. It only took about
a second to start up, and that was on an Sun Ultra 2 (I think), which is
not a speed demon.
However, C++ compilation can be very slow because the compiler often needs
to see so many related class definitions to compile each source file. You
can avoid a lot of that with the pimpl idiom, though.
> Of course, that's still not faster than having an interpreter. One of
> the things that attracted me to python was that it came with an
> interpreter, as opposed to having add it to Perl or Java.
It gives a huge productivity boost.
> Batteries included, indeed.
More information about the Python-list
mailing list