summaryrefslogtreecommitdiff
path: root/examples/tutorial/old/semantics/Base.gf
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2008-11-11 10:28:32 +0000
committeraarne <aarne@cs.chalmers.se>2008-11-11 10:28:32 +0000
commita5300ad062b82154f3f9533e143ea35515e6c39e (patch)
treea7eddd52596e0d216f17c9c7581d6ea67f9d8879 /examples/tutorial/old/semantics/Base.gf
parentdb18350b1e55f7edfca8f02b0b233a6a7dcbb1ec (diff)
tutorial complete with server and js
Diffstat (limited to 'examples/tutorial/old/semantics/Base.gf')
-rw-r--r--examples/tutorial/old/semantics/Base.gf60
1 files changed, 60 insertions, 0 deletions
diff --git a/examples/tutorial/old/semantics/Base.gf b/examples/tutorial/old/semantics/Base.gf
new file mode 100644
index 000000000..85868d7ac
--- /dev/null
+++ b/examples/tutorial/old/semantics/Base.gf
@@ -0,0 +1,60 @@
+-- abstract syntax of a query language
+
+abstract Base = {
+
+cat
+ S ;
+ NP ;
+ PN ;
+ CN ;
+ AP ;
+ A2 ;
+ Conj ;
+fun
+
+-- sentence syntax
+ PredAP : NP -> AP -> S ;
+
+ ComplA2 : A2 -> NP -> AP ;
+
+ ModCN : AP -> CN -> CN ;
+
+ ConjAP : Conj -> AP -> AP -> AP ;
+ ConjNP : Conj -> NP -> NP -> NP ;
+
+ UsePN : PN -> NP ;
+ Every : CN -> NP ;
+ Some : CN -> NP ;
+
+ And, Or : Conj ;
+
+-- lexicon
+
+ UseInt : Int -> PN ;
+
+ Number : CN ;
+ Even, Odd, Prime : AP ;
+ Equal, Greater, Smaller, Divisible : A2 ;
+
+ Sum, Product, GCD : ListPN -> PN ;
+
+-- adding questions
+
+cat
+ Question ;
+ Answer ;
+ ListPN ;
+fun
+ WhatIs : PN -> Question ;
+ WhichAre : CN -> AP -> Question ;
+ QuestS : S -> Question ;
+
+ Yes : Answer ;
+ No : Answer ;
+ Value : NP -> Answer ;
+
+ None : NP ;
+ Many : ListPN -> NP ;
+ BasePN : PN -> PN -> ListPN ;
+ ConsPN : PN -> ListPN -> ListPN ;
+}