[Haskell-cafe] Why is Haskell so slow (comparing to Java/Scala)?

Nick Smallbone nick at smallbone.se
Wed Sep 20 16:05:12 UTC 2017


Hi Stanislav,

Станислав Черничкин <schernichkin at gmail.com> writes:
> I've wrote simple Haskell benchmark program, which populated primitive vector
> from vector package:
>
> ...
> void $ for [0..1000000 - 1] $ flip (P.unsafeWrite v) (1 :: Int)

'for' is a variant of 'map' - it returns a list of results (in this case
a list of a million () values). Instead you should use 'forM_' (note the
underscore) from Control.Monad, which discards the result - that cuts
the runtime by a huge amount when I try it. (And make sure to compile
with -O too.)

Nick



More information about the Haskell-Cafe mailing list