her.esy.fun/src/posts/0010-Haskell-Now/io_bind.hs
Yann Esposito (Yogsototh) 3f403f946b
Progress
2019-12-26 17:27:19 +01:00

18 lines
456 B
Haskell

import Data.Maybe
import Text.Read (readMaybe)
getListFromString :: String -> Maybe [Integer]
getListFromString str = readMaybe $ "[" ++ str ++ "]"
askUser :: IO [Integer]
askUser =
putStrLn "Enter a list of numbers (sep. by commas):" >>
getLine >>= \input ->
let maybeList = getListFromString input in
case maybeList of
Just l -> return l
Nothing -> askUser
main :: IO ()
main = askUser >>=
\list -> print $ sum list