From 0a4b42b61016480d60be2f92898241a5e1a12354 Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Wed, 10 Apr 2019 14:18:44 +0200 Subject: [PATCH] (Pes) Add {Base,Cons,Conj}CN --- src/persian/ConjunctionPes.gf | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/persian/ConjunctionPes.gf b/src/persian/ConjunctionPes.gf index a970570f4..1aa4a2e35 100644 --- a/src/persian/ConjunctionPes.gf +++ b/src/persian/ConjunctionPes.gf @@ -35,11 +35,25 @@ concrete ConjunctionPes of Conjunction = BaseAP x y = y ** twoTable Mod x y ; ConsAP xs x = xs ** consrTable Mod comma xs x ; -- Table3 Number Gender Case comma xs x ;-- ** {isPre = andB xs.isPre x.isPre} ; + BaseCN cn1 cn2 = leanCN cn1 ** twoTable2 Number Mod (leanCN cn1) (leanCN cn2) ; + ConsCN cn cns = leanCN cn ** consrTable2 Number Mod comma (leanCN cn) cns ; + ConjCN conj cns = cns ** conjunctDistrTable2 Number Mod conj cns ; + lincat [S] = {s1,s2 : VVForm => Str} ; [Adv] = {s1,s2 : Str} ; [NP] = {s1,s2 : Mod => Str} ** BaseNP ; + [CN] = {s1,s2 : Number => Mod => Str ; + animacy : Animacy ; + isCmpd : CmpdStatus; + hasAdj : Bool ; + compl : Number => Str} ; [AP] = {s1,s2 : Mod => Str ; adv : Str ; isPre : Bool} ; [RS] = {s1,s2 : Agr => Str ; rp : RelPron => Str} ; +oper + leanCN : CN -> CN = \cn -> cn ** { + compl = \\n => [] ; + s = \\n,m => cn.s ! n ! m ++ cn.compl ! n ; + } ; }