Hello zaxis, Friday, October 23, 2009, 12:02:57 PM, you wrote:
btw, good_ssq_red = fmap (statis.str2Ints) $ readFile "ssqHitNum.txt" or good_ssq_red = (statis.str2Ints) `fmap` readFile "ssqHitNum.txt" > 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.zigans...@gmail.com >> >> _______________________________________________ >> Haskell-Cafe mailing list >> Haskell-Cafe@haskell.org >> http://www.haskell.org/mailman/listinfo/haskell-cafe >> >> -- Best regards, Bulat mailto:bulat.zigans...@gmail.com _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe