diff options
Diffstat (limited to 'old-lib/resource/thai/ExtraTha.gf')
| -rw-r--r-- | old-lib/resource/thai/ExtraTha.gf | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/old-lib/resource/thai/ExtraTha.gf b/old-lib/resource/thai/ExtraTha.gf new file mode 100644 index 000000000..d987fb7e5 --- /dev/null +++ b/old-lib/resource/thai/ExtraTha.gf @@ -0,0 +1,52 @@ +--concrete ExtraTha of ExtraThaAbs = CatTha ** +-- open ResTha, Coordination, Prelude in { +-- +-- lin +-- GenNP np = {s = \\_ => np.s ! Gen} ; +-- ComplBareVS v s = insertObj (\\_ => s.s) (predV v) ; +-- +-- StrandRelSlash rp slash = { +-- s = \\t,a,p,_ => rp.s ! RC Acc ++ slash.s ! t ! a ! p ! ODir ++ slash.c2 ; +-- c = Acc +-- } ; +-- EmptyRelSlash rp slash = { +-- s = \\t,a,p,_ => slash.s ! t ! a ! p ! ODir ++ slash.c2 ; +-- c = Acc +-- } ; +-- +-- StrandQuestSlash ip slash = +-- {s = \\t,a,b,q => +-- (mkQuestion (ss (ip.s ! Acc)) slash).s ! t ! a ! b ! q ++ slash.c2 +-- }; +-- +-- lincat +-- VPI = {s : VPIForm => Agr => Str} ; +-- [VPI] = {s1,s2 : VPIForm => Agr => Str} ; +-- +-- lin +-- BaseVPI = twoTable2 VPIForm Agr ; +-- ConsVPI = consrTable2 VPIForm Agr comma ; +-- +-- MkVPI vp = { +-- s = \\v,a => vp.ad ++ vp.inf ++ vp.s2 ! a +-- } ; +-- ConjVPI = conjunctTable2 VPIForm Agr ; +-- ComplVPIVV vv vpi = +-- insertObj (\\a => (if_then_Str vv.isAux [] "to") ++ vpi.s ! VPIInf ! a) (predVV vv) ; +-- +-- UncNegCl t a cl = {s = t.s ++ a.s ++ cl.s ! t.t ! a.a ! neg ! ODir} ; +-- UncNegQCl t a cl = {s = \\q => t.s ++ a.s ++ cl.s ! t.t ! a.a ! neg !q} ; +-- UncNegRCl t a cl = { +-- s = \\r => t.s ++ a.s ++ cl.s ! t.t ! a.a ! neg ! r ; +-- c = cl.c +-- } ; +-- UncNegImpSg imp = {s = imp.s ! neg ! ImpF Sg False} ; +-- UncNegImpPl imp = {s = imp.s ! neg ! ImpF Pl False} ; +-- +-- CompoundCN a b = {s = \\n,c => a.s ! Sg ! Nom ++ b.s ! n ! c} ; +-- +-- +-- oper +-- neg = CNeg False ; +-- +--} |
