summaryrefslogtreecommitdiff
path: root/doc/tutorial/FoodsEng.gf
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2005-12-18 21:26:21 +0000
committeraarne <aarne@cs.chalmers.se>2005-12-18 21:26:21 +0000
commit6398140d0ac21ad05a0c595b77007631cd5e1265 (patch)
treefae648d7e9e344fa850be37f1eb0b3b29e8f17e6 /doc/tutorial/FoodsEng.gf
parenta205829623ea7b928c84e56cd6453148f123a3d5 (diff)
new tutorial example
Diffstat (limited to 'doc/tutorial/FoodsEng.gf')
-rw-r--r--doc/tutorial/FoodsEng.gf35
1 files changed, 35 insertions, 0 deletions
diff --git a/doc/tutorial/FoodsEng.gf b/doc/tutorial/FoodsEng.gf
new file mode 100644
index 000000000..1899c0e96
--- /dev/null
+++ b/doc/tutorial/FoodsEng.gf
@@ -0,0 +1,35 @@
+--# -path=.:prelude
+
+concrete FoodsEng of Foods = open Prelude, MorphoEng in {
+
+ lincat
+ S, Quality = SS ;
+ Kind = {s : Number => Str} ;
+ Item = {s : Str ; n : Number} ;
+
+ lin
+ Is item quality = ss (item.s ++ (mkVerb "are" "is").s ! item.n ++ quality.s) ;
+ This = det Sg "this" ;
+ That = det Sg "that" ;
+ All = det Pl "all" ;
+ Most = det Pl "most" ;
+ QKind quality kind = {s = \\n => quality.s ++ kind.s ! n} ;
+ Wine = regNoun "wine" ;
+ Cheese = regNoun "cheese" ;
+ Fish = mkNoun "fish" "fish" ;
+ Very = prefixSS "very" ;
+ Fresh = ss "fresh" ;
+ Warm = ss "warm" ;
+ Italian = ss "Italian" ;
+ Expensive = ss "expensive" ;
+ Delicious = ss "delicious" ;
+ Boring = ss "boring" ;
+
+ oper
+ det : Number -> Str -> Noun -> {s : Str ; n : Number} = \n,d,cn -> {
+ s = d ++ cn.s ! n ;
+ n = n
+ } ;
+
+}
+ \ No newline at end of file