Fwd: Re: [Shootout-list] Ray tracer developments

Brent Fulgham bfulg@pacbell.net
Fri, 29 Apr 2005 15:48:54 -0700 (PDT)


> --- Jon Harrop <jon@ffconsultancy.com> wrote:
> > In my experience, this reflects real coding as I
> > often end up with much more sophisticated and
> > faster algorithms in OCaml than in C++ because I
> > can code them that much more quickly.
 
Interesting!

> > While I think this is probably fair (since it's a
> > 'same thing' test), I would be hard pressed to now
> > prohibit this optimization from the C++ version,
> > even though this adds more lines to the C++
> > version.  This change would return us to our
former
> > rankings, so what have we gained?
>
> How about: start with the shortest possible
> implementation and then optimise it to be as fast
> as possible, provided you don't exceed 100 LOC?

That seems fair.

That's an interesting idea.  It penalizes languages
that are verbose, or overly low-level in terms of
how much "stuff" you can implement within the
allowed line-limit.

This is not without merit in the real world, where
various industry-proposed "complexity metrics" have
been created to determine how theoretically stable
a system will be (i.e., if you go about X number of
modules with Y number of functions, etc., your
score will be Z).  Higher-order languages can
leverage their expressiveness to implement better
algorithms but remain at (or below) more
conventional languages such as C++.  Hmmmm....
 
You don't have to be Jon Bently to recognize that
better compilers may give you multiples of
performance, but that better algorithms give you
orders of magnitude of improvement.
 
I kind of like this idea -- what do the rest of you
think?
 
I also think that I will get even more whiney
hate-mail than usual if we implement this change,
but I find the mail more amusing than hurtful, so
I'm game for it!  :-)

-Brent