
19 Apr
2011
19 Apr
'11
1:21 p.m.
On Tue, 19 Apr 2011, Volker Stolz wrote:
The following three-liner creates a stack overflow (on my machine, MacOS), and I'm a bit puzzled as to why:
import System.Random
main = do mapM (const (getStdRandom (randomR (0, 50000::Int)))) [0..10000000]
botanix:~ stolz$ ./a.out Stack space overflow: current size 8388608 bytes. Use `+RTS -Ksize -RTS' to increase it.
Shall it print something? I think mapM_ would be better here. If you compile with 'ghc -Wall' then GHC will also warn you, that you ignored the result of mapM. I think, HLint would also warn you.