Brian,

You might also want to take a look at the list fusion functionality in
GHC which often can help optimize your programs when programming with
lists.
http://www.haskell.org/ghc/docs/latest/html/users_guide/rewrite-rules.html#id3153234
It doesn't help in your particular program but it might be usable for
you in the future.

Cheers,

/Josef

On 5/3/06, Brian Hulley <[EMAIL PROTECTED]> wrote:
Bulat Ziganshin wrote:
> [ideas including reverseMapM_]
> you will laugh, but speed of your two solutions depends on so many
> factors (including size of CPU cache) that noone can say that is
> better in general. although for small lists reverseMapM_ should be
> faster than reverse+mapM. what will be faster - using of higher-order
> function or direct recursion, i can't say, it's a really
> counter-intuitive area of ghc optimizer :)
>
> of course, i don't think that all that really matters for your program
> (drawing should anyway need much more time than looping). just use
> higher-level approach (that makes code simpler to write, understand
> and maintain) and don't bother your mind :)

Hi Bulat!
Thanks for the suggestions about reverseMapM_ etc.
It seems that since the speeds of the two solutions can be relatively
faster/slower on different platforms/CPUs I might as well just use the
combination of existing functions mapM_ and reverse at the moment to get
readable code with the least amount of effort :-)

Best regards, Brian.

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

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

Reply via email to