summaryrefslogtreecommitdiff
path: root/examples/tutorial/smart/House.gf
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2007-09-12 21:03:00 +0000
committeraarne <aarne@cs.chalmers.se>2007-09-12 21:03:00 +0000
commitc9f8961a9ed5c33524619309171aba1b587ad7c2 (patch)
treeb11ab55379d53b027ac528e1c49bbef4c4e52a3a /examples/tutorial/smart/House.gf
parentfff6afd438ec49cf32f9a384b98e6f9a7859d65c (diff)
last adjustments of examples before course
Diffstat (limited to 'examples/tutorial/smart/House.gf')
-rw-r--r--examples/tutorial/smart/House.gf35
1 files changed, 35 insertions, 0 deletions
diff --git a/examples/tutorial/smart/House.gf b/examples/tutorial/smart/House.gf
new file mode 100644
index 000000000..e156792f1
--- /dev/null
+++ b/examples/tutorial/smart/House.gf
@@ -0,0 +1,35 @@
+abstract House = {
+
+flags startcat = Utterance ;
+
+cat
+ Utterance ;
+ Command ;
+ Question ;
+ Kind ;
+ Action Kind ;
+ Device Kind ;
+ Location ;
+
+fun
+ UCommand : Command -> Utterance ;
+ UQuestion : Question -> Utterance ;
+
+ CAction : (k : Kind) -> Action k -> Device k -> Command ;
+ QAction : (k : Kind) -> Action k -> Device k -> Question ;
+
+ DKindOne : (k : Kind) -> Device k ;
+ DKindMany : (k : Kind) -> Device k ;
+ DLoc : (k : Kind) -> Device k -> Location -> Device k ;
+
+ light, fan : Kind ;
+
+ switchOn, switchOff : (k : Kind) -> Action k ;
+
+ dim : Action light ;
+
+ kitchen, livingRoom : Location ;
+
+
+}
+