summaryrefslogtreecommitdiff
path: root/examples-3.0/tutorial/semantics/Top.hs
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2008-06-20 10:38:03 +0000
committeraarne <aarne@cs.chalmers.se>2008-06-20 10:38:03 +0000
commite4119186fa03a12d8820bc3c03797ac33c71e258 (patch)
tree87674c66ff9261fbdb9b75ea7507fdd0e5ec3c18 /examples-3.0/tutorial/semantics/Top.hs
parentc3bb8267e67f8d2238a95f3930d6d8e3a6f7d234 (diff)
tutorial semantics example works except one rul
Diffstat (limited to 'examples-3.0/tutorial/semantics/Top.hs')
-rw-r--r--examples-3.0/tutorial/semantics/Top.hs23
1 files changed, 23 insertions, 0 deletions
diff --git a/examples-3.0/tutorial/semantics/Top.hs b/examples-3.0/tutorial/semantics/Top.hs
new file mode 100644
index 000000000..6027b238c
--- /dev/null
+++ b/examples-3.0/tutorial/semantics/Top.hs
@@ -0,0 +1,23 @@
+module Main where
+
+import GSyntax
+import SemBase
+import Logic
+import GF.GFCC.API
+
+main :: IO ()
+main = do
+ gr <- file2grammar "base.gfcc"
+ loop gr
+
+loop :: MultiGrammar -> IO ()
+loop gr = do
+ s <- getLine
+ let t:_ = parse gr "BaseEng" "S" s
+ putStrLn $ showTree t
+ let p = iS $ fg t
+ putStrLn $ show p
+ let v = valProp exModel [] p
+ putStrLn $ show v
+ loop gr
+