[Haskell-cafe] Climbing up the shootout...
jonathanccast at fastmail.fm
Mon Sep 22 16:58:07 EDT 2008
On Tue, 2008-09-23 at 00:46 +0400, Bulat Ziganshin wrote:
> Hello Jonathan,
> Tuesday, September 23, 2008, 12:30:19 AM, you wrote:
> >> yes, in asm number of instructions executed more or less define
> >> number of CPU cycles used.
> well, i more or less know all this stuff. but are you really compare
> to Haskell???
You were tasked with finding a language where `naive' code is fast.
Assembler doesn't count; you have to think about
> does Haskell programs typically written in account of
> cache misses and CPU ticks?
No. At that level, you write assembler (or C). But assembler and C are
usually not written in a naive fashion (not as naive as naive Haskell).
And when they do, they suck, performance-wise.
> i suggest you to look into two papers i
I don't remember the exact citation, but I'm sure I've read them.
Probably several times over. Most papers I've seen I think the authors
looked for a large contrast; they aren't comparing Haskell and C on
truly level ground.
> - they state hundreds times slower naive Haskell
With slow datastructures
> vs naive C.
Not so naive; just better datastructures. Which are then replicated in
the relevant papers. And the result is neither extremely low-level code
nor 100s of times slower than C. The term `naive' gets thrown around in
the introduction to these papers for effect, but the Haskell code under
discussion by the time you reach the conclusion isn't much less `naive'
than the C code in the introduction.
> it's a reality, against all your arguments
Bang harder!! I don't think the next list over can hear you yet!
More information about the Haskell-Cafe