
Hello Donald, Sunday, August 6, 2006, 7:03:45 AM, you wrote:
the best way to optimize Haskell program (with current technologies) is to rewrite it in strict & imperative manner:
Strict, very often, since we get unboxed types out of ghc. Imperative, not always (and will be less so with Data.ByteString -- since we don't need to drop into IO to get peek/poke).
FPS just implements some algorithms in imperative code and gives functional interface to them. if you need one of implemented algorithms - you can avoid programming imperative code himself. but that is true for any other library. the only difference is that FPS will be much more used than average lib. btw, is it possible to rewrite this algorithm in more high-level way using FPS, of course with more or less good speed? and imperative for me don't mean "in IO/ST monad". imperative mean that your program is sequence of steps required to compute result instead of function that translates original object to resulting one -- Best regards, Bulat mailto:Bulat.Ziganshin@gmail.com