summaryrefslogtreecommitdiff
path: root/old-examples/tutorial/smart/House.gf
diff options
context:
space:
mode:
Diffstat (limited to 'old-examples/tutorial/smart/House.gf')
-rw-r--r--old-examples/tutorial/smart/House.gf35
1 files changed, 35 insertions, 0 deletions
diff --git a/old-examples/tutorial/smart/House.gf b/old-examples/tutorial/smart/House.gf
new file mode 100644
index 000000000..e156792f1
--- /dev/null
+++ b/old-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 ;
+
+
+}
+