#!/usr/bin/env stack --stack --install-ghc runghc module ArgParse (parse_args) where -- Here we will service arguments passed to the program in the simplest manner -- possible. import System.Environment import System.Exit import Pomodoro (worker) import Clock (countdown) import Version (version) usage = putStrLn "Usage: monadoro [-vh] [--session]" soft_version = putStrLn $ version exit = exitWith ExitSuccess warn = putStrLn "Invalid argument." >> usage >> exitWith (ExitFailure 1) parse ["-h"] = usage >> exit parse ["-v"] = soft_version >> exit parse ["--session"] = worker parse [] = countdown parse _ = warn parse_args = getArgs >>= parse main = parse_args