
good_ssq_red:: IO [Int] good_ssq_red =do { samp <- fmap str2Ints $ readFile "ssqHitNum.txt"; return $ statis samp; } It works now ! thank you Bulat Ziganshin-2 wrote:
Hello zaxis,
Friday, October 23, 2009, 11:15:01 AM, you wrote:
good_ssq_red = withFile "ssqHitNum.txt" ReadMode (\h -> do { samp <- fmap str2Ints $ hGetContents h; print samp; --without this line, the result will always [1..16] return $ statis samp; })
withFile and hGetContents shouldn't be used together. both closes file handle and, here, withFile closes it before hGetContents lazily reads data. it's why you need to force reading with print
use readFile instead
-- Best regards, Bulat mailto:Bulat.Ziganshin@gmail.com
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
-- View this message in context: http://www.nabble.com/Lazy-problem---tp26021845p26022301.html Sent from the Haskell - Haskell-Cafe mailing list archive at Nabble.com.