4
import Control.Applicative
5
import System.Environment
18
parse :: String -> Err Prog
19
parse s = pProg $ resolveLayout True $ myLexer s
21
parseFile :: FilePath -> IO (Err Prog)
22
parseFile file = parse <$> readFile file
24
goFile :: FilePath -> IO ()
28
Bad err -> putStrLn $ "Error:\n" ++ err
31
putStrLn "--- Type checked ---"
32
case runTCM emptyEnv $ checkProgram p of
33
Left err -> putStrLn $ "ERROR:\n" ++ err
34
Right ds -> mapM_ (putStrLn . printTree . toAbstractDecl) ds
40
_ -> putStrLn "File argument missing."