summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/tutorial/smart/SmartEng.gf15
-rw-r--r--examples/tutorial/smart/SmartFre.gf21
2 files changed, 21 insertions, 15 deletions
diff --git a/examples/tutorial/smart/SmartEng.gf b/examples/tutorial/smart/SmartEng.gf
index eff8a000a..c5d9ac090 100644
--- a/examples/tutorial/smart/SmartEng.gf
+++ b/examples/tutorial/smart/SmartEng.gf
@@ -18,6 +18,9 @@ lincat
Action = {s : VForm => Str ; part : Str} ;
Device = {s : Str ; n : Number} ;
Location = SS ;
+ Switchable = SS ;
+ Dimmable = SS ;
+ Statelike = SS ;
lin
UCommand c = c ;
@@ -42,10 +45,10 @@ lin
light = mkNoun "light" ;
fan = mkNoun "fan" ;
- switchOn _ _ = mkVerb "switch" "swithced" "on" ;
- switchOff _ _ = mkVerb "switch" "swithced" "off" ;
+ switchOn _ proof = mkVerb proof.s "switch" "switched" "on" ;
+ switchOff _ proof = mkVerb proof.s "switch" "switched" "off" ;
- dim _ _ = mkVerb "dim" "dimmed" [] ;
+ dim _ proof = mkVerb proof.s "dim" "dimmed" [] ;
kitchen = ss "kitchen" ;
livingRoom = ss ["living room"] ;
@@ -58,10 +61,10 @@ oper
}
} ;
- mkVerb : (_,_,_ : Str) -> {s : VForm => Str ; part : Str} = \go,gone,away -> {
+ mkVerb : (_,_,_,_ : Str) -> {s : VForm => Str ; part : Str} = \proof,go,gone,away -> {
s = table {
- VImp => go ;
- VPart => gone
+ VImp => proof++go ;
+ VPart => proof++gone
} ;
part = away
} ;
diff --git a/examples/tutorial/smart/SmartFre.gf b/examples/tutorial/smart/SmartFre.gf
index 95b219b60..e756c07bd 100644
--- a/examples/tutorial/smart/SmartFre.gf
+++ b/examples/tutorial/smart/SmartFre.gf
@@ -19,6 +19,9 @@ lincat
Action = {s : VForm => Str} ;
Device = {s : Str ; g : Gender ; n : Number} ;
Location = {s : Number => Str ; g : Gender} ;
+ Switchable = SS ;
+ Dimmable = SS ;
+ Statelike = SS ;
lin
UCommand c = c ;
@@ -47,10 +50,10 @@ lin
light = mkNoun "lampe" Fem ;
fan = mkNoun "ventilateur" Masc ;
- switchOn _ _ = mkVerb "allumer" "allumé" ;
- switchOff _ _ = mkVerb "éteindre" "éteint" ;
+ switchOn _ proof = mkVerb proof.s "allumer" "allumé" ;
+ switchOff _ proof = mkVerb proof.s "éteindre" "éteint" ;
- dim _ _ = mkVerb "baisser" "baissé" ;
+ dim _ proof = mkVerb proof.s "baisser" "baissé" ;
kitchen = mkNoun "cuisine" Fem ;
livingRoom = mkNoun "salon" Masc ;
@@ -64,13 +67,13 @@ oper
g = g
} ;
- mkVerb : (_,_ : Str) -> {s : VForm => Str} = \venir,venu -> {
+ mkVerb : (_,_,_ : Str) -> {s : VForm => Str} = \proof,venir,venu -> {
s = table {
- VInf => venir ;
- VPart Masc Sg => venu ;
- VPart Masc Pl => venu + "s" ;
- VPart Fem Sg => venu + "e" ;
- VPart Fem Pl => venu + "es"
+ VInf => proof++venir ;
+ VPart Masc Sg => proof++venu ;
+ VPart Masc Pl => proof++venu + "s" ;
+ VPart Fem Sg => proof++venu + "e" ;
+ VPart Fem Pl => proof++venu + "es"
}
} ;