Dear Haskell programmers,

I'm very confused, because I really don't know how to handle with IO's and 
other datatypes, such as Int or String.
If I want to build a haskell program can I only use IO() method outputs ? How 
can I "give" a Int result from a different method back to the main?
Would this mean that I have to create only IO() outputs? Is this correct?

For example:

-- A User has to choose something, so I need a IO() datatype
main :: IO()    
main = do 
        [...]
        let listtournementTime = [8,20,10,15]    

        -- This is wrong: Couldn't match expected type `IO t0' with actual type 
`Int'
        -- The results of the method dauer is a Int. Do I have to transform the 
method to an IO() Output
        
        a <- Dauer listtournementTime           
                                                                        

        [...]


-- the methods

dauer:: [Int] -> Int
dauer (x:xs)
    | laenge(x:xs) == 1 = 0
    | mod (laenge (x:xs)) 2 == 0 = (tmp x xs) + dauer xs
    | mod (laenge (x:xs)) 2 /= 0 = dauer xs
    | otherwise = 999999 -- failure

tmp:: Int -> [Int] -> Int
tmp y (x:xs) = x-y

laenge        :: [a] -> Integer
laenge []     =  0
laenge (x:xs) =  1 + laenge xs

The last three methods are working correct, if I directly put some data into 
the methods, like: 
dauer [10,15] 
===Result===> 5


Thank you for any help

Best greetings from Namibia
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to