blob: d8aad44d13b39c23a6ca7b88a4ced351fe97ac5b (
plain)
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
28
29
30
|
module Main where
import GF.Devel.Grammar.LexGF
import GF.Devel.Grammar.ParGF
---- import GF.Devel.Grammar.PrintGF
import GF.Devel.Grammar.Modules
import GF.Devel.Grammar.SourceToGF
import qualified GF.Devel.Grammar.ErrM as GErr ----
import GF.Data.Operations
import Data.Map
import System (getArgs)
main = do
f:_ <- getArgs
s <- readFile f
let tt = myLexer s
case pGrammar tt of
GErr.Bad s -> putStrLn s
GErr.Ok g -> compile g
compile g = do
let eg = transGrammar g
case eg of
Ok gr -> print (length (assocs (gfmodules gr))) >> putStrLn "OK"
Bad s -> putStrLn s
return ()
|