1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
> module Main where
> import System(getArgs)
> import Data.Maybe(fromJust)
> import FiniteMap(fmToList,lookupFM)
> import Expr
> main
> = do
> [s] <- getArgs
> test s
> test s
> = do
> case doParse $ map (:[]) $ lexer s of
> ParseOK r f -> do
> putStrLn $ "Ok " ++ show r ++ "\n"
> ++ unlines (map show $ fmToList f)
> putStrLn $ show (decode (forest_lookup f) r ::[Int])
> ParseEOF f -> do
> putStrLn $ "Premature end of input:\n"
> ++ unlines (map show $ fmToList f)
> ParseError ts f -> do
> putStrLn $ "Error: " ++ show ts
> forest_lookup f i
> = fromJust $ lookupFM f i
|