module Obs.Main import Obs.Abstract import Obs.NormalForm import Obs.Parser import Obs.Syntax import Obs.Term import Obs.Typing import System import Text.PrettyPrint.Prettyprinter import Text.PrettyPrint.Prettyprinter.Render.Terminal %default total usage : IO () usage = do () <- putStrLn "usage: obs " exitFailure partial main : IO () main = do [_, file] <- getArgs | _ => usage defs <- parseFile file blk <- Abstract.printErr $ abstractBlock defs ctx <- Typing.printErr $ checkBlock blk putDoc $ pretty blk