Re: RAD vs. performance
- From: Jon Harrop <usenet@xxxxxxxxxxxxxx>
- Date: Mon, 19 Jun 2006 23:05:16 +0100
Robbert Haarman wrote:
On Mon, Jun 19, 2006 at 11:59:13AM +0100, Jon Harrop wrote:
Very true. However, it is not uncommon to write thousands of lines of ML
code and, as soon as it passes the type checker, have it work properly
first time. No need to waste your time unit testing...
I don't know...I'd never interpret the fact that a program passes the
compile-time checker as a guarantee that it works correctly.
I agree.
There's no substitute for actual testing.
I disagree. Static checking is a substitute for some "actual" testing.
Then don't use the shootout.
Every time someone says that, I have to ask them: do you have anything
better?
Yes:
http://www.ffconsultancy.com/free/ray_tracer/languages.html
I know the Shootout is flawed all over, but it's the only source
of performance data that compares a lot of more or less recent
implementations of various programming languages on various benchmarks,
using various criteria. I'd love to see a lot of effort that goes in
discussing whether or not the Shootout is good as it is to be put into
actually improving it. I, at least, am convinced that it can be very
useful.
Many people, including myself, have already described in detail what is
wrong with the shootout, explained how to fix it, actually fixed it and
then been ignored. Indeed, my ray tracer benchmark was originally on the
shootout but they removed it. I submitted dozens of improved programs
before giving up.
For non-trivial examples, Lisp certainly seems to be a lot slower (e.g.
2x). I'm not sure why. Slow GC was one reason that came up.
Maybe it's just that you don't litter non-trivial examples with type
declarations, and Lisp implementers don't spend their efforts optimizing
every part of their implementation (Common Lisp is a lot of work to
_implement_, let alone optimize).
Lisp is slow because it was not designed with performance in mind.
Or perhaps there _is_ something
fundamental about Lisp that makes it slow. I just don't know what it
would be.
Dynamic typing for one thing.
I also don't really care - it's fast enough for me.
What if Lisp is also more verbose, error-prone and slower to develop in than
other languages? To be honest, I can't think of a single practical use for
Lisp.
--
Dr Jon D Harrop, Flying Frog Consultancy Ltd.
http://www.ffconsultancy.com/products/ocaml_for_scientists/chapter1.html
.
- Follow-Ups:
- Re: RAD vs. performance
- From: Robbert Haarman
- Re: RAD vs. performance
- From: cr88192
- Re: RAD vs. performance
- References:
- RAD vs. performance
- From: Yet Another Dan
- Re: RAD vs. performance
- From: Jon Harrop
- Re: RAD vs. performance
- From: Robbert Haarman
- Re: RAD vs. performance
- From: Jon Harrop
- Re: RAD vs. performance
- From: Robbert Haarman
- RAD vs. performance
- Prev by Date: Re: RAD vs. performance
- Next by Date: Re: RAD vs. performance
- Previous by thread: Re: RAD vs. performance
- Next by thread: Re: RAD vs. performance
- Index(es):
Relevant Pages
|