
On Tue, 26 Oct 2010 08:36:58 +0200, Sok H. Chang
import System import System.Random
main = do myHeader <- readFile "C:\\Documents and Settings\\myHeader.txt" putStrLn $ myExtractSentence myHeader myExtractSentence file = ary !! ranNoInt where ranNoInt =<< ranNo -- *mark ranNo = randomRIO (0, n-1) n = length ary ary = lines file ---------------------------------------------------------------------------------------------------------------------- There are two questions.
1) I've got following error message. Haskell>ghc --make Test01.hs -o Test [1 of 1] Compiling Main ( Test01.hs, Test01.o )
Test01.hs:10:9: parse error (possibly incorrect indentation)
How can fix it?
The lay-out is wrong: putStrLn should be in the same column as the "myHeader" above it; avoid tabs to prevent unexpected lay-out problems. The lay-out could be like this: ----------------------------------------------------------------------------------------------------------------------- main = do myHeader <- readFile "C:\\Documents and Settings\\myHeader.txt" putStrLn $ myExtractSentence myHeader -----------------------------------------------------------------------------------------------------------------------
2) Is it OK at "*mark" line?
Note that ranNoInt is a value inside the IO monad, you cannot use directly as an index. Regards, Henk-Jan van Tuyl -- http://Van.Tuyl.eu/ http://members.chello.nl/hjgtuyl/tourdemonad.html --