-parseArgs :: *World -> (Opts, *World)
-parseArgs w
-# ([p:args], w) = getCommandLine w
-= (pa args {program=p, lex=False, parse=False, fp=Nothing, help=False}, w)
-where
- pa :: [String] -> (Opts -> Opts)
- pa [] = id
- pa ["--help":r] = \o.pa r {o & help=True}
- pa ["--lex":r] = \o.pa r {o & lex=True, parse=False}
- pa ["--parse":r] = \o.pa r {o & lex=False, parse=True}
- pa [x:r] = \o.pa r {o & fp=Just x}
-
-//Start :: *World -> (LexerOutput, ParserOutput, *World)
-//Start w
-//# (args, w) = getCommandLine w
-//# (toparse, out) = readEntireFile out
-//= (lexer toparse, parse (lexer toparse), w)
-