From 0ef6d707911b3cc57a0bee5db33a444237219c29 Mon Sep 17 00:00:00 2001 From: Tom Smeding Date: Sun, 21 May 2023 22:00:40 +0200 Subject: Find old Haskell implementation on backup disk GHC 8.0.2 vintage, doesn't compile --- hs/Main.hs | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 hs/Main.hs (limited to 'hs/Main.hs') diff --git a/hs/Main.hs b/hs/Main.hs new file mode 100644 index 0000000..5db97ec --- /dev/null +++ b/hs/Main.hs @@ -0,0 +1,26 @@ +module Main where + +import Control.Monad +import System.Environment +import System.Exit + +-- import AST +import Interpreter +import Parser + + +main :: IO () +main = do + args <- getArgs + when (length args == 0) $ die "Pass source file as parameter" + let fname = head args + src <- readFile fname + let eprog = parseProgram (Just fname) src + prog <- either (die . show) return eprog + -- print prog + -- putStrLn $ astPretty prog + let (merr, output, _) = interpret prog + + maybe (putStrLn "[No errors]") (putStrLn . ("ERROR: " ++)) merr + putStrLn "OUTPUT:" + putStrLn output -- cgit v1.2.3-54-g00ecf