[Shootout-list] thoughts on the subject of ''compile to native code''

Bengt Kleberg bengt.kleberg@ericsson.com
Fri, 08 Oct 2004 09:35:48 +0200


Brandon J. Van Every wrote:

...deleted
> What do you call 'same implementation' ?  OCaml has completely separate
> bytecode and native code compilers, for instance.  They are so separate
> that you can't intermix them.  They have different names, ocamlc and
> ocamlopt.  The only way they're the 'same language implementation' is
> they come from the same guys and are always distributed together.

this is a good question.

the simplest answer i can come up with is that if the same source code 
gives the same value/result (ie, answer, not performance) after having 
been subjected to the different compiler/interpreter/flags/etc then the 
source is the same language.

another possiblity would be to go by what the developpers say. mzscmeme 
seems to be explained as a single language that can be interpreted or 
compiled.

what would be your definition?


> I think the performance differences between compiled and interpreted
> code are definitely worth knowing on a main page.  I would like to know,
> for instance, how slow interpreted Python is, compared to bytecode
> compiled Python, compared to Python with Psyco run on it.  Those are
> major categories of Python usage, not subtleties of particular
> optimization flags.

i, too, would like to be able to see these differences.
i am discussing if we always need to see them all on the ''top test 
result page'' (or ''plain test result page'', or ''default test result 
page'').


> I understand the problem of proliferating options.  Listing languages by
> performance partially alleviates this.

in this thread i am questioning the current parctices of having _some_ 
possible variants of the same language on the ''top test result page''.

for one i find it strange that some differences are there 
(compiled/not), whereas others are not (flag +RTS/not).

surely we can not have all possible combinations? i am trying to discuss 
which combinations we should have on the ''top test result page''.
one possible way of presenting this page is to only have the best result 
of a language. i think that is a good thing. you do not, but i have yet 
to see a persuasive argument from you as to why the mix you propose is 
better than mine.


> 
> I don't think every variation in compile flags should be listed on a
> main page.

sofar nobody has suggested this.


>  But I do think the "compiled vs. interpreted" distinction is
> an important one, demanding different entries.  You are going to see
> large differences in performance; indeed, my conclusion from the
> original Shootout was that all the compiled languages were in the same
> ballpark of performance.  All the interpreted languages were in a clump
> below them.

please check out the current shootouts webpages. i think it might help 
to change your understanding of the relative performance between 
compiled-to-native and all the other different methods available.


bengt