22 lines
460 B
Haskell
22 lines
460 B
Haskell
|
|
module Main where
|
||
|
|
|
||
|
|
import MiniWindows.Normalize
|
||
|
|
( normalizeWindows
|
||
|
|
, parseWindow
|
||
|
|
, renderWindows
|
||
|
|
)
|
||
|
|
import System.Environment (getArgs)
|
||
|
|
import System.Exit (die)
|
||
|
|
|
||
|
|
main :: IO ()
|
||
|
|
main = do
|
||
|
|
args <- getArgs
|
||
|
|
let inputArgs =
|
||
|
|
case args of
|
||
|
|
[] -> ["0-10", "8-14", "20-24", "24-30"]
|
||
|
|
_ -> args
|
||
|
|
|
||
|
|
case traverse parseWindow inputArgs of
|
||
|
|
Left err -> die err
|
||
|
|
Right windows -> putStrLn (renderWindows (normalizeWindows windows))
|