CurryInfo: flatcurry-compact-3.0.0 / Main.main

definition: Info
 
main :: IO ()
main = do
  args <- getArgs
  case args of
    ["-h"]                -> putStrLn usage
    ["--help"]            -> putStrLn usage
    ["--export",mname]    -> compactProgAndReplace [Exports] mname
    ["--main",func,mname] -> compactProgAndReplace [Main func] mname
    [mname]               -> compactProgAndReplace [] mname
    _                     -> putStrLn $ useError args
 where
  useError args = "ERROR: Illegal arguments: " ++ unwords args ++ "\n" ++ usage

  usage = "Usage: curry-compactflat [--export | --main func] <module_name>"
demand: Info
 no demanded arguments
deterministic: Info
 deterministic operation
documentation: Info
 
Check arguments and call main function:
failfree: Info
 <FAILING>
indeterministic: Info
 referentially transparent operation
infix: Info
 no fixity defined
iotype: Info
 {() |-> _}
name: Info
 main
precedence: Info
 no precedence defined
result-values: Info
 _
signature: Info
 Prelude.IO ()
solution-complete: Info
 operation might suspend on free variables
terminating: Info
 possibly non-terminating
totally-defined: Info
 possibly non-reducible on same data term