module Input where import System.Environment import System.IO import System.Process getInput :: Int -> IO [String] getInput day = do let fname = show day ++ ".in" args <- getArgs str <- case args of ["-"] -> getContents [] -> readFile fname ["c"] -> readProcess "xsel" ["-bo"] "" _ -> do hPutStrLn stderr $ "WARNING: Unrecognised command-line parameters " ++ show args ++ ", reading from " ++ fname readFile fname return (lines str)