summaryrefslogtreecommitdiff
path: root/next-lib/src/thai/SentenceTha.gf
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2008-12-18 14:21:28 +0000
committeraarne <aarne@cs.chalmers.se>2008-12-18 14:21:28 +0000
commit9e341cc7f9020eda842c8ad0f1f57bf6326eb89d (patch)
tree1c0e78a1c3790286a0fabf408ea15ee179f8749d /next-lib/src/thai/SentenceTha.gf
parent98a4b6a8088273dfa55dfa1c3ea78e85cd9c7a8d (diff)
Hindi and Thai compile in 1.5
Diffstat (limited to 'next-lib/src/thai/SentenceTha.gf')
-rw-r--r--next-lib/src/thai/SentenceTha.gf61
1 files changed, 61 insertions, 0 deletions
diff --git a/next-lib/src/thai/SentenceTha.gf b/next-lib/src/thai/SentenceTha.gf
new file mode 100644
index 000000000..3d46348c8
--- /dev/null
+++ b/next-lib/src/thai/SentenceTha.gf
@@ -0,0 +1,61 @@
+concrete SentenceTha of Sentence = CatTha **
+ open Prelude, StringsTha, ResTha in {
+
+ flags optimize=all_subs ;
+
+ lin
+
+ PredVP np vp = {s = \\p => np.s ++ vp.s ! p} ;
+
+-- PredSCVP sc vp = mkClause sc.s (agrP3 Sg) vp ;
+
+ ImpVP vp = {
+ s = table {
+ Pos => vp.s ! Pos ++ si_s ;
+ Neg => yaa_s ++ vp.s ! Pos
+ }
+ } ;
+-- SlashV2 np v2 =
+-- mkClause (np.s ! Nom) np.a (predV v2) ** {c2 = v2.c2} ;
+--
+-- SlashVVV2 np vv v2 =
+-- mkClause (np.s ! Nom) np.a
+-- (insertObj (\\a => infVP vv.isAux (predV v2) a) (predVV vv)) **
+-- {c2 = v2.c2} ;
+--
+-- AdvSlash slash adv = {
+-- s = \\t,a,b,o => slash.s ! t ! a ! b ! o ++ adv.s ;
+-- c2 = slash.c2
+-- } ;
+--
+-- SlashPrep cl prep = cl ** {c2 = prep.s} ;
+--
+-- EmbedS s = {s = conjThat ++ s.s} ;
+-- EmbedQS qs = {s = qs.s ! QIndir} ;
+-- EmbedVP vp = {s = infVP False vp (agrP3 Sg)} ; --- agr
+--
+ UseCl t p cl = {s = t.s ++ p.s ++ cl.s ! p.p} ;
+ UseQCl t p cl = {
+ s = \\q => t.s ++ p.s ++
+ case q of {QIndir => waa_s ; _ => []} ++
+ cl.s ! p.p
+ } ;
+-- UseRCl t a p cl = {
+-- s = \\r => t.s ++ a.s ++ p.s ++ cl.s ! t.t ! a.a ! ctr p.p ! r ;
+-- c = cl.c
+-- } ;
+--
+-- AdvS a s = {s = a.s ++ "," ++ s.s} ;
+--
+-- oper
+-- ctr = contrNeg True ; -- contracted negations
+--}
+--
+--{-
+----- todo: tense of embedded Slash
+--
+-- SlashVSS np vs s =
+-- mkClause (np.s ! Nom) np.a
+-- (insertObj (\\_ => conjThat ++ s.s) (predV vs)) **
+-- {c2 = s.c2} ;
+}