I have been work my way through "Haskell The Craft of Functional Programming", all was fine until IO (chapter 18). That is causing me bafflement.

I am trying to write a totally trivial program that reads a series of integers from the console until it gets a zero, then returns the series of integers as a list.

I am down to randomly editing my code, never a good sign. Any clues would be appreciated, My code so far, which clear doesn't work, is:
getInt :: IO Int
getInt = do
           putStr "Enter number (zero to quit)"
           line <- getLine
           return (read line :: Int)

anIntList :: [Int]
anIntList =
       do
           let n = getInt
           if n == 0
               then return []
               else return (n : anIntList)


ps: even a simple version that returns an Int i can't get to work.
anInt :: Int
anInt = do
           n <- getInt
return n
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to