args <- getArgs
case args of
[] -> hGetContents stdin >>= run interpret pStms
- "-c":f:[] -> runFile (writeFile (f++".c") . compile) pStms f
+ "-c":f:[] -> let file = (f++".c") in do
+ putStrLn $ "Compiling "++f++" to the C99-compatible file:"++file
+ runFile (writeFile file . compile) pStms f
f:[] -> runFile interpret pStms f
- _ -> print "Too many arguments"
+ _ -> do
+ putStrLn "Usage: ./CompInt [-c] <file>"
+ putStrLn "-c : compile <file> to C99-compatible file"