[Haskell-cafe] Can Haskell outperform C++?

Ryan Newton rrnewton at gmail.com
Thu May 24 16:51:18 CEST 2012


Oops, forgot to reply-to-all.  This was a minor clarification on Wren's
behalf (he can correct me if I'm wrong).  But I agree with Bryan that it's
time for the thread to die:


> > Do bear in mind that Java doesn't optimize ---that's the JIT's job
>
> What are we supposed to make of that?
>
> Why write that and not -- Do bear in mind that Smalltalk doesn't optimize
> that's the JIT's job -- or -- Do bear in mind that C doesn't optimize
> that's the compiler's job.
>

I believe this was referring to the fact that javac isn't an aggressive
optimizing compiler on the way from source to bytecode, i.e. it's the
bytecode->asm leg where the optimization effort is focused.

As an outsider to things Java that's something I've had trouble
understanding, actually.  It doesn't seem like an either-or choice to me...

   -Ryan


On Wed, May 23, 2012 at 4:26 PM, Isaac Gouy <igouy2 at yahoo.com> wrote:

> > From: wren ng thornton <wren at freegeek.org>
>
> > Sent: Tuesday, May 22, 2012 9:30 PM
>
> -snip-
> > FWIW, that matches my expectations pretty well. Naive/standard Java
> performing
> > slower than Smalltalk; highly tweaked Java using non-standard data types
> > performing on-par with or somewhat faster than Smalltalk.
>
> I have no difficulty believing that if you are talking about a 1996 Java
> reference implementation and a 1996 Smalltalk JIT VM.
>
> I could believe that if you are comparing a naive Java program with a
> highly tweaked Smalltalk program.
>
>
> > That C is 7x faster is a bit on the high end, but for something like
> tsort I could imagine it'd be possible.
>
> It's possible because it's possible to write a Java program to be slower
> than it need be :-)
>
>
> > Do bear in mind that Java doesn't optimize ---that's the JIT's job
>
> What are we supposed to make of that?
>
> Why write that and not -- Do bear in mind that Smalltalk doesn't optimize
> that's the JIT's job -- or -- Do bear in mind that C doesn't optimize
> that's the compiler's job.
>
>
> -snip-
> > But even still, in my experience of using Smalltalk, the standard data
> > structures are much better done and so they will be on-par with what
> you'd
> > get from hand-tuning for Java. I've spent a lot of time trying to get
> decent
> > performance out of Java, not so much with Smalltalk; but the performance
> with
> > Smalltalk was sufficient that it wasn't needed so badly.
>
> Do you have a specific example that you can share?
>
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20120524/ce6bef1a/attachment.htm>


More information about the Haskell-Cafe mailing list