summaryrefslogtreecommitdiff
path: root/examples/tutorial/syntax
diff options
context:
space:
mode:
Diffstat (limited to 'examples/tutorial/syntax')
-rw-r--r--examples/tutorial/syntax/FoodsEng.gf5
-rw-r--r--examples/tutorial/syntax/FoodsI.gf26
-rw-r--r--examples/tutorial/syntax/FoodsIta.gf5
-rw-r--r--examples/tutorial/syntax/Syntax.gf17
4 files changed, 53 insertions, 0 deletions
diff --git a/examples/tutorial/syntax/FoodsEng.gf b/examples/tutorial/syntax/FoodsEng.gf
new file mode 100644
index 000000000..fb8c44610
--- /dev/null
+++ b/examples/tutorial/syntax/FoodsEng.gf
@@ -0,0 +1,5 @@
+--# -path=.:../foods:prelude
+
+concrete FoodsEng of Foods = FoodsI with
+ (Syntax = SyntaxEng),
+ (Test = TestEng) ;
diff --git a/examples/tutorial/syntax/FoodsI.gf b/examples/tutorial/syntax/FoodsI.gf
new file mode 100644
index 000000000..d67302235
--- /dev/null
+++ b/examples/tutorial/syntax/FoodsI.gf
@@ -0,0 +1,26 @@
+incomplete concrete FoodsI of Foods = open Syntax, Test in {
+ lincat
+ Phrase = S ;
+ Item = NP ;
+ Kind = CN ;
+ Quality = AP ;
+ lin
+ Is = mkS ;
+ This = mkNP this_Det ;
+ That = mkNP that_Det ;
+ These = mkNP these_Det ;
+ Those = mkNP those_Det ;
+ QKind = mkCN ;
+ Very = mkAP very_AdA ;
+
+ Wine = mkCN wine_N ;
+ Pizza = mkCN pizza_N ;
+ Cheese = mkCN cheese_N ;
+ Fish = mkCN fish_N ;
+ Fresh = mkAP fresh_A ;
+ Warm = mkAP warm_A ;
+ Italian = mkAP italian_A ;
+ Expensive = mkAP expensive_A ;
+ Delicious = mkAP delicious_A ;
+ Boring = mkAP boring_A ;
+}
diff --git a/examples/tutorial/syntax/FoodsIta.gf b/examples/tutorial/syntax/FoodsIta.gf
new file mode 100644
index 000000000..57beab918
--- /dev/null
+++ b/examples/tutorial/syntax/FoodsIta.gf
@@ -0,0 +1,5 @@
+--# -path=.:../foods:prelude
+
+concrete FoodsIta of Foods = FoodsI with
+ (Syntax = SyntaxIta),
+ (Test = TestIta) ;
diff --git a/examples/tutorial/syntax/Syntax.gf b/examples/tutorial/syntax/Syntax.gf
index e75f7dd0c..3c7b0b7c0 100644
--- a/examples/tutorial/syntax/Syntax.gf
+++ b/examples/tutorial/syntax/Syntax.gf
@@ -23,4 +23,21 @@ oper
= \np,ap -> PredVP PPos np (ComplAP ap) ;
} ;
+ mkNP : Det -> CN -> NP
+ = DetCN ;
+
+ mkCN = overload {
+ mkCN : AP -> CN -> CN
+ = ModCN ;
+ mkCN : N -> CN
+ = UseN ;
+ } ;
+
+ mkAP = overload {
+ mkAP : AdA -> AP -> AP
+ = AdAP ;
+ mkAP : A -> AP
+ = UseA ;
+ } ;
+
} \ No newline at end of file