diff options
| author | Mirek Kratochvil <exa.exa@gmail.com> | 2022-11-15 20:31:02 +0100 |
|---|---|---|
| committer | Mirek Kratochvil <exa.exa@gmail.com> | 2022-11-15 20:31:02 +0100 |
| commit | fdf96f5a771c4e99e6064160c88072ebb63ca57f (patch) | |
| tree | b63ae6da02fcddbbc531524b3a58c11a32d1cc3a /app | |
| parent | e074e454d5f8b5bc5dc45dccab1d138c5cd4ab0c (diff) | |
| download | prlg-fdf96f5a771c4e99e6064160c88072ebb63ca57f.tar.gz prlg-fdf96f5a771c4e99e6064160c88072ebb63ca57f.tar.bz2 | |
there's outputStrLn
Diffstat (limited to 'app')
| -rw-r--r-- | app/Frontend.hs | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/app/Frontend.hs b/app/Frontend.hs index b1ae79a..eac4e89 100644 --- a/app/Frontend.hs +++ b/app/Frontend.hs @@ -33,16 +33,16 @@ interpret = (>> return True) . lex where lex input = do case MP.parse P.lexPrlg "-" input of - Left bundle -> liftIO $ putStr (MP.errorBundlePretty bundle) + Left bundle -> lift . outputStr $ MP.errorBundlePretty bundle Right toks -> parse toks parse toks = do case MP.parse P.parsePrlg "-" toks of - Left bundle -> liftIO $ putStr (MP.errorBundlePretty bundle) + Left bundle -> lift . outputStr $ MP.errorBundlePretty bundle Right asts -> traverse_ shunt asts shunt ast = do o <- gets ops case P.shuntPrlg o ast of - Left err -> liftIO $ putStrLn $ "expression parsing: " ++ err + Left err -> lift . outputStrLn $ "expression parsing: " ++ err Right prlg -> intern prlg intern prlgs = do prlgi <- withStrTable $ \st -> C.internPrlg st prlgs @@ -58,14 +58,13 @@ interpret = (>> return True) . lex execute code execute code = do res <- I.prove code - case res of - Left err -> liftIO $ putStrLn err - Right res -> - liftIO $ - putStrLn $ - if res - then "yes." - else "no proof." + lift . outputStrLn $ + case res of + Left err -> err + Right res -> + if res + then "yes." + else "no proof." interpreterStart :: PrlgEnv () interpreterStart = do |
