diff options
| author | aarne <aarne@cs.chalmers.se> | 2007-11-12 09:17:02 +0000 |
|---|---|---|
| committer | aarne <aarne@cs.chalmers.se> | 2007-11-12 09:17:02 +0000 |
| commit | b801149fbf5c9eb3f73477d3496cdfd92cb178a1 (patch) | |
| tree | 332b6a3ec1b3b56b9ed1d8e19f175f10df970119 /src/GF/Devel/GFCCInterpreter.hs | |
| parent | eb7b0286016714128aae742b4cedccc3dc30a9a0 (diff) | |
merged gfc and gfi to one binary, and a shell script for gfc
Diffstat (limited to 'src/GF/Devel/GFCCInterpreter.hs')
| -rw-r--r-- | src/GF/Devel/GFCCInterpreter.hs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/GF/Devel/GFCCInterpreter.hs b/src/GF/Devel/GFCCInterpreter.hs new file mode 100644 index 000000000..b2b17dba7 --- /dev/null +++ b/src/GF/Devel/GFCCInterpreter.hs @@ -0,0 +1,28 @@ +module Main where + +import GF.Command.Interpreter +import GF.Command.Commands +import GF.GFCC.API +import System (getArgs) +import Data.Char (isDigit) + +-- Simple translation application built on GFCC. AR 7/9/2006 -- 19/9/2007 + +main :: IO () +main = do + file:_ <- getArgs + grammar <- file2grammar file + let env = CommandEnv grammar (allCommands grammar) + printHelp grammar + loop env + +loop :: CommandEnv -> IO () +loop env = do + s <- getLine + if s == "q" then return () else do + interpretCommandLine env s + loop env + +printHelp grammar = do + putStrLn $ "languages: " ++ unwords (languages grammar) + putStrLn $ "categories: " ++ unwords (categories grammar) |
