On Tue, 2008-09-23 at 00:20 +0400, Bulat Ziganshin wrote: > Hello Isaac, > > Monday, September 22, 2008, 11:49:30 PM, you wrote: > > >> i mean that naive haskell code is very slow and 3 or 5 or twelve libs > >> can't solve the problem of ghc generating slow code > > > Is there something particularly fascinating about naive code written in > > any language? > > yes, in asm number of instructions executed more or less define > number of CPU cycles used.
On modern processors (RISC design), naive asm is likely to be extraordinarily slow, because memory usage and cache considerations and register scheduling dominate processor cycles. > C known as portable asm. Known as != is. And naive C is also extraordinarily slow, especially if written at a high level. It is not the least bit difficult to write memory hogs in C. (I should know; I've done it. And so has every major software house (including open source projects) to release in C, for that matter.) > Haskell was > developed with goal to hide implementation details from egg-headed > scientists and this obviously should have some drawbacks Should != is. Not all shoot-out entries look like C with Haskell syntax (although some do). Naive Haskell can be 100s of times slower than well-tuned C; naive C can be 100s of times slower than well-tuned Haskell (where well-tuned Haskell can just mean using good data structures. It's quite naive indeed to dismiss better data structures and better algorithms (especially where `better algorithms) as `libraries.) jcc _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe