On Fri, Aug 10, 2007 at 02:28:09PM +0800, Hugh Perkins wrote:
> On 8/10/07, Stefan O'Rear <[EMAIL PROTECTED]> wrote:
> >
> > Haskell's purpose: To be a generally cool language
> > Haskell's competition: C++, SML, ... hundreds of thousands more and I make
> > no assertion of a representative sample ...
> >

> Wrt imperative languages, it probably makes more sense to compare Haskell
> with imperative languages that do have a GC and for which it's near
> impossible to accidentally corrupt the stack/heap.  You'll find by the way
> that the imperative GC'd, stack/heap protected languages run *significantly*
> faster for many (not all I guess?) algorithms and applications.

I don't have any numbers, but I've got a strong suspicion that this is
almost entirely an issue of "programmer culture"; IOW, if you wrote a
O'Caml to Haskell compiler, and fed idiomatic O'Caml through that and
then GHC, the resulting binaries would be about as fast as if you used
ocamlopt (INRIA's native code O'Caml compiler); and conversely, Haskell
code translated naïvely into O'Caml would be no faster than before.

(I do have the case of my Unlambda compiler, which was somewhat faster
with ghc -O2 than with ocamlopt, but between CPS-conversion and the
complete lack of data types in Unlambda, the resulting code was
sufficiently unidiomatic in either language as to render my numbers
mostly useless).

> This will change with threading of course, but still if you've got a
> 1024-core Niagara 2012 machine, and the Haskell algorithm runs 65536 times
> as slowly as a single-core imperative GC'd language program, you're not
> going to see a significant speed-up ;-)

Just wait 12 years, and if the price of processors follows Moore's
extrapolation and the Haskell keeps its parallelism, Haskell will win :)

Stefan

Attachment: signature.asc
Description: Digital signature

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to