Made a simple code generator that outputs to LLVM IR

This commit is contained in:
Samuel Hammersberg 2023-02-03 16:59:36 +01:00
parent defe409d78
commit 819f4c9406
6 changed files with 123 additions and 154 deletions

View file

@ -1,6 +1,7 @@
{-# LANGUAGE LambdaCase #-}
module Main where
import Compiler.Compiler (compile)
import Control.Monad.Except (runExcept)
import Grammar.Par (myLexer, pProgram)
import Interpreter (interpret)
@ -17,14 +18,7 @@ main = getArgs >>= \case
putStrLn "SYNTAX ERROR"
putStrLn err
exitFailure
Right prg -> case runExcept $ interpret prg of
Left err -> do
putStrLn "INTERPRETER ERROR"
putStrLn err
exitFailure
Right i -> do
print i
exitSuccess
Right prg -> compile prg