[Haskell-cafe] [IO Int] -> IO [Int]
Phlex
Phlex at telenet.be
Fri May 4 13:23:16 EDT 2007
Hello all,
I'm trying to learn haskell, so here's is my first newbie question.
I hope this list is appropriate for such help requests.
I'm trying to write a function with the signature [IO Int] -> IO [Int]
Here is my first attempt :
conv :: [IO Int] -> IO [Int]
conv l = do val <- (head l)
return (val : (conv (tail l)))
This does not work as I'm consing an Int to an (IO [Int]).
So I tried this :
conv2 :: [IO Int] -> IO [Int]
conv2 l = do val <- (head l)
rest <- (conv2 (tail l))
return (val : rest)
That works, but it won't work for infinite lists.
How could I achieve the desired result ?
Thanks in advance,
Sacha
More information about the Haskell-Cafe
mailing list