From 47c776413ed4e11839ad6838575d0077ddd496a3 Mon Sep 17 00:00:00 2001 From: Josh Rahm Date: Sat, 17 Dec 2022 01:28:06 -0700 Subject: fiddle: have a basic tokenizer working. --- src/Main.hs | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'src/Main.hs') diff --git a/src/Main.hs b/src/Main.hs index 9249638..226182a 100644 --- a/src/Main.hs +++ b/src/Main.hs @@ -1,4 +1,19 @@ module Main where +import qualified Language.Fiddle.Tokenizer +import qualified Data.Text.IO +import qualified System.Environment as System +import Control.Monad (forM_) + main :: IO () -main = putStrLn "Hello, World" +main = do + argv <- System.getArgs + + case argv of + [filePath] -> do + text <- Data.Text.IO.readFile filePath + case Language.Fiddle.Tokenizer.tokenize filePath text of + Left pe -> putStrLn $ "Parse Error: " ++ show pe + Right lst -> forM_ lst $ \(Language.Fiddle.Tokenizer.Token t _) -> print t + + _ -> putStrLn "Wrong Args" -- cgit