aboutsummaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/Main.hs17
1 files changed, 8 insertions, 9 deletions
diff --git a/app/Main.hs b/app/Main.hs
index a676a18..669a66e 100644
--- a/app/Main.hs
+++ b/app/Main.hs
@@ -1,15 +1,10 @@
module Main (main) where
import System.Environment
-import Control.Monad
-
+import Control.Monad.Except
+import Control.Monad.Reader
+import Types
import Lib
-data Config = Config {
- configScriptFileName :: Maybe String,
- configVerboseMode :: Bool,
- configShowHelp :: Bool
-}
-
parseArgs :: Config -> [String] -> Config
parseArgs config args =
case args of
@@ -40,7 +35,11 @@ main = do
error "TODO help"
case (configScriptFileName config) of
- Just scriptFileName -> runScriptFile scriptFileName
+ Just scriptFileName -> do
+ result <- runExceptT $ runReaderT (runScriptFile scriptFileName) config
+ case result of
+ Left (LException ex) -> putStrLn $ "Error: " ++ ex
+ Right () -> return ()
Nothing -> error "TODO REPL"
return ()