summaryrefslogtreecommitdiff
path: root/next-lib/src/english/QuestionEng.gf
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2008-09-22 11:49:15 +0000
committeraarne <aarne@cs.chalmers.se>2008-09-22 11:49:15 +0000
commit98665df78b8018af30051cb4a9a31f845e0ba19d (patch)
tree67ba30b09e2b9590a00a4b193bf7611caa935af8 /next-lib/src/english/QuestionEng.gf
parent4862018f140a1bdcc7961d445ed9aa92facd742f (diff)
moved lib/next-resource to next-lib/src, to enable linking with next-lib as value of GF_LIB_PATH
Diffstat (limited to 'next-lib/src/english/QuestionEng.gf')
-rw-r--r--next-lib/src/english/QuestionEng.gf55
1 files changed, 55 insertions, 0 deletions
diff --git a/next-lib/src/english/QuestionEng.gf b/next-lib/src/english/QuestionEng.gf
new file mode 100644
index 000000000..2fc894932
--- /dev/null
+++ b/next-lib/src/english/QuestionEng.gf
@@ -0,0 +1,55 @@
+concrete QuestionEng of Question = CatEng ** open ResEng, Prelude in {
+
+ flags optimize=all_subs ;
+
+ lin
+
+ QuestCl cl = {
+ s = \\t,a,p =>
+ let cls = cl.s ! t ! a ! p
+ in table {
+ QDir => cls ! OQuest ;
+ QIndir => "if" ++ cls ! ODir
+ } ---- "whether" in ExtEng
+ } ;
+
+ QuestVP qp vp =
+ let cl = mkClause (qp.s ! Nom) (agrP3 qp.n) vp
+ in {s = \\t,a,b,_ => cl.s ! t ! a ! b ! ODir} ;
+
+ QuestSlash ip slash =
+ mkQuestion (ss (slash.c2 ++ ip.s ! Acc)) slash ;
+ --- stranding in ExratEng
+
+ QuestIAdv iadv cl = mkQuestion iadv cl ;
+
+ QuestIComp icomp np =
+ mkQuestion icomp (mkClause (np.s ! Nom) np.a (predAux auxBe)) ;
+
+
+ PrepIP p ip = {s = p.s ++ ip.s ! Acc} ;
+
+ AdvIP ip adv = {
+ s = \\c => ip.s ! c ++ adv.s ;
+ n = ip.n
+ } ;
+
+ IdetCN idet cn = {
+ s = \\c => idet.s ++ cn.s ! idet.n ! c ;
+ n = idet.n
+ } ;
+
+ IdetIP idet = {
+ s = \\c => idet.s ;
+ n = idet.n
+ } ;
+
+ IdetQuant idet num = {
+ s = idet.s ! num.n ++ num.s ;
+ n = num.n
+ } ;
+
+ CompIAdv a = a ;
+ CompIP p = ss (p.s ! Nom) ;
+
+}