6b9806ff0c00ce4764bf69a35458de0bd2fbdbb5
[ekitaihs.git] / Ekitai.hs
1 import System.Environment
2 import System.IO
3
4 import qualified Data.Vector as V
5 import qualified Brick as B
6
7 import Parse
8 import Sim
9 import Render
10
11 -- ui :: B.Widget ()
12 -- ui = B.str "hello" <+> B.str "World"
13
14 hGetLines :: Handle -> IO [String]
15 hGetLines h = do
16     line <- hGetLine h
17     isEof <- hIsEOF h
18     if isEof then return [line]
19     else do
20         lines <- hGetLines h
21         return (line:lines)
22
23 main = do
24     argv <- getArgs
25     (opts, fname) <- ekitaiOpts argv
26     handle <- openFile fname ReadMode
27     contents <- hGetLines handle
28     hClose handle
29     -- putStrLn $ show $ stringToSim contents
30     initialState <- buildInitialState $ stringToSim contents
31     endState <- B.defaultMain ekitaiApp initialState
32     print endState
33     return 0
34
35 -- main :: IO ()
36 -- main = do
37     -- return 0
38