summaryrefslogtreecommitdiff
path: root/examples/tutorial/embedded/haskell/Run.hs
diff options
context:
space:
mode:
Diffstat (limited to 'examples/tutorial/embedded/haskell/Run.hs')
-rw-r--r--examples/tutorial/embedded/haskell/Run.hs38
1 files changed, 0 insertions, 38 deletions
diff --git a/examples/tutorial/embedded/haskell/Run.hs b/examples/tutorial/embedded/haskell/Run.hs
deleted file mode 100644
index c3fd87466..000000000
--- a/examples/tutorial/embedded/haskell/Run.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-module Main where
-
-import GSyntax
-import GF.Embed.EmbedAPI
-
-main :: IO ()
-main = do
- gr <- file2grammar "math.gfcm"
- loop gr
-
-loop :: MultiGrammar -> IO ()
-loop gr = do
- s <- getLine
- interpret gr s
- loop gr
-
-interpret :: MultiGrammar -> String -> IO ()
-interpret gr s = do
- let ltss = parseAllLang gr "Question" s
- case ltss of
- [] -> putStrLn "no parse"
- (l,t:_):_ -> putStrLn $ linearize gr l $ gf $ answer $ fg t
-
-answer :: GQuestion -> GAnswer
-answer p = case p of
- GOdd x -> test odd x
- GEven x -> test even x
- GPrime x -> test prime x
-
-value :: GObject -> Int
-value e = case e of
- GNumber (GInt i) -> fromInteger i
-
-test :: (Int -> Bool) -> GObject -> GAnswer
-test f x = if f (value x) then GYes else GNo
-
-prime :: Int -> Bool
-prime = (< 8) ----