new grammar and adapted renamer
This commit is contained in:
parent
88a4a934b8
commit
936cb1301f
15 changed files with 858 additions and 821 deletions
21
src/Main.hs
21
src/Main.hs
|
|
@ -11,7 +11,8 @@ import Grammar.Print (printTree)
|
|||
import Renamer.Renamer (rename)
|
||||
import System.Environment (getArgs)
|
||||
import System.Exit (exitFailure, exitSuccess)
|
||||
import TypeChecker.TypeChecker (typecheck)
|
||||
|
||||
-- import TypeChecker.TypeChecker (typecheck)
|
||||
|
||||
main :: IO ()
|
||||
main =
|
||||
|
|
@ -28,12 +29,12 @@ main' s = do
|
|||
putStrLn $ printTree parsed
|
||||
|
||||
putStrLn "\n-- Renamer --"
|
||||
let renamed = rename parsed
|
||||
renamed <- fromRenamerErr . rename $ parsed
|
||||
putStrLn $ printTree renamed
|
||||
|
||||
putStrLn "\n-- TypeChecker --"
|
||||
typechecked <- fromTypeCheckerErr $ typecheck renamed
|
||||
putStrLn $ show typechecked
|
||||
-- putStrLn "\n-- TypeChecker --"
|
||||
-- typechecked <- fromTypeCheckerErr $ typecheck renamed
|
||||
-- putStrLn $ show typechecked
|
||||
|
||||
-- putStrLn "\n-- Lambda Lifter --"
|
||||
-- let lifted = lambdaLift typechecked
|
||||
|
|
@ -55,6 +56,16 @@ fromCompilerErr =
|
|||
)
|
||||
pure
|
||||
|
||||
fromRenamerErr :: Err a -> IO a
|
||||
fromRenamerErr =
|
||||
either
|
||||
( \err -> do
|
||||
putStrLn "\nRENAME ERROR"
|
||||
putStrLn err
|
||||
exitFailure
|
||||
)
|
||||
pure
|
||||
|
||||
fromSyntaxErr :: Err a -> IO a
|
||||
fromSyntaxErr =
|
||||
either
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue