summaryrefslogtreecommitdiff
path: root/examples/godis-tram/Common/GodisSystem.gf
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2006-11-08 15:08:09 +0000
committeraarne <aarne@cs.chalmers.se>2006-11-08 15:08:09 +0000
commiteb3d750459c5ab6fd0fa2266175e1ad4a4e3d33f (patch)
tree8171f7d4ed14c9821a508a6471ee8733fdc7808f /examples/godis-tram/Common/GodisSystem.gf
parent1fd01130157b81d1b8f4e334f93efa25acf0ecc3 (diff)
godis tram grammars, augmented with Fin
Diffstat (limited to 'examples/godis-tram/Common/GodisSystem.gf')
-rw-r--r--examples/godis-tram/Common/GodisSystem.gf135
1 files changed, 135 insertions, 0 deletions
diff --git a/examples/godis-tram/Common/GodisSystem.gf b/examples/godis-tram/Common/GodisSystem.gf
new file mode 100644
index 000000000..2569c1ec3
--- /dev/null
+++ b/examples/godis-tram/Common/GodisSystem.gf
@@ -0,0 +1,135 @@
+--# -path=.:prelude
+
+abstract GodisSystem = PredefAbs ** {
+
+cat
+
+-- Participant;
+
+Move;
+[Move]{1};
+S;
+
+ShortAns;
+
+Proposition;
+
+-- NOTE: Question means only WhQ
+-- this division is for Multimodality to work
+Question;
+YNQ; AltQ;
+[Proposition]{2};
+
+-- special kind of proposition best linearized as a VP,
+-- only used in Y/N and Alt questions starting with "do you want to ..."
+-- this is for VP aggregation to work
+VPProposition; -- issue(X^p(X)) and action(a)
+[VPProposition]{2};
+
+Action;
+Reason;
+
+
+fun
+
+-- usr, sys : Participant;
+
+----------------------------------------------------------------------
+-- forming Questions
+
+action_Q,
+issue_Q : Question;
+
+ynq : Proposition -> YNQ;
+altq : [Proposition] -> AltQ;
+-- BaseProposition : Proposition -> Proposition -> [Proposition];
+-- ConsProposition : Proposition -> [Proposition] -> [Proposition];
+
+----------------------------------------------------------------------
+-- forming Propositions
+
+not : Proposition -> Proposition;
+-- done : Action -> Proposition;
+fail : Question -> Reason -> Proposition;
+-- und : Participant -> Proposition -> Proposition;
+
+----------------------------------------------------------------------
+-- forming VPPropositions, and associated questions
+
+action : Action -> VPProposition;
+issue : Question -> VPProposition;
+
+vp_ynq : VPProposition -> YNQ;
+vp_altq : [VPProposition] -> AltQ;
+-- BaseVPProposition : VPProposition -> VPProposition -> [VPProposition];
+-- ConsVPProposition : VPProposition -> [VPProposition] -> [VPProposition];
+
+----------------------------------------------------------------------
+-- short answers
+
+notS : ShortAns -> ShortAns;
+
+
+----------------------------------------------------------------------
+-- dialogue moves
+
+answer_yes,
+answer_no : Move;
+
+greet,
+quit : Move;
+ask : Question -> Move;
+askYNQ : YNQ -> Move;
+askAltQ : AltQ -> Move;
+answer : Proposition -> Move;
+answerVP : VPProposition -> Move;
+shortAns : ShortAns -> Move;
+
+request,
+confirm : Action -> Move;
+reportFailure : Action -> Reason -> Move;
+
+answerFailure : Question -> Reason -> Move;
+
+----------------------------------------------------------------------
+-- ICM
+
+icm_acc_pos,
+icm_con_neg,
+icm_per_neg,
+icm_per_int,
+icm_sem_neg,
+icm_sem_int,
+icm_und_neg,
+icm_reraise,
+icm_loadplan,
+icm_accommodate : Move;
+
+icm_per_pos : String -> Move;
+icm_und_int_prop,
+icm_und_pos_prop,
+icm_acc_neg_prop : Proposition -> Move;
+icm_acc_neg_que : Question -> Move;
+icm_sem_pos_move : Move -> Move;
+icm_sem_pos_shortAns : ShortAns -> Move;
+icm_und_pos_vp,
+icm_und_int_vp : {- Participant -> -} VPProposition -> Move;
+icm_reraise_act : Action -> Move;
+
+icm_reraise_whq,
+icm_accommodate_whq,
+icm_reaccommodate_whq : Question -> Move;
+icm_reraise_ynq,
+icm_accommodate_ynq,
+icm_reaccommodate_ynq : YNQ -> Move;
+icm_und_int_altq,
+icm_reraise_altq,
+icm_accommodate_altq,
+icm_reaccommodate_altq: AltQ -> Move;
+
+-- BaseMove : Move -> [Move];
+-- ConsMove : Move -> [Move] -> [Move];
+
+godis_utterance : [Move] -> S;
+
+}