[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Python and Allegro net comparisons



Thanks for getting in touch with me.  I will call Chris.

I'd to mention a couple of things.  The reason why I've been comparing to
Allegro is that Franz came up with such a nice price for a CMU site
license.  Lucid is not as easily available.

I feel like I am pretty much forced to compare benchmarks with commercial
implementations, and at least in technical papers, the test conditions need
to be pretty clear.  Basically, I have a need to establish that my
compiler is not terrible.

Note also that I don't feel the unsafe Gabriel results are terribly
important; environment is certainly more important.  I keep trying to pound
that fact in, but people still want to see those Gabriels.

I have considered only presenting the slowdown for safe code in each
implementation, since I do consider that rather important.  But then
Allegro would come out looking even worse, since fast-safe code is where
Python has the greatest relative advantage.

I suppose I could do something like measure several commercial
implementations, then compare the CMU result to the average.  I think that
would meet my needs, but I would need access to several other commercial
CLs.

There is also the issue of benchmarking conditions.  I am running *my*
version of the benchmarks on your Lisp.  I'm trying to be fair, but of
course, I haven't spent time tuning my benchmarks for Allegro.  Perhaps
Franz could make available its Gabriel sources (and sources for other
benchmarks it considers more representative.)

As I see it, there are several very important differences between a product
like Allegro and CMU CL:
 -- Allegro is supported, and has good documentation.
 -- Allegro runs on many, many platforms.
 -- Allegro is more highly tuned, especially with respect to memory usage.
 -- Allegro's development environment combines GUI features with the GNU
    emacs standard.

CMU CL does have several technical features which some users many like, but
each has a corresponding cost:
 -- Advanced compiler optimizations make the compiler slower and bigger.
 -- The native Lisp development environment (Hemlock) offers somewhat
    easier extensibility, but at the cost of GNU emacs compatibility.

For some features, such as source-level debugging, the cost/benefit ratio
is fairly impressive, leading me to believe that this is a commercially
viable technology.  I infer from claims made by Franz employees about the
future of Lisp that Franz is very interested in supporting source-level
debugging.  I would be happy to discuss the details of our debugger (and of
course, our code can be used also.)

Anyway, as a first step, I will edit all of our documentation to avoid
explicit mention of Allegro, in favor of vague terms such as "commercial
implementations."

  Rob