1
0
forked from GitHub/gf-rgl

(Pes) Added ZWNJ to verb forms + big cleanup and refactoring

This commit is contained in:
Inari Listenmaa
2019-02-07 11:00:26 +01:00
parent 75cf3643ec
commit 8a6b0f8f01
13 changed files with 882 additions and 1568 deletions
+154 -133
View File
@@ -1,4 +1,4 @@
concrete StructuralPes of Structural = CatPes **
concrete StructuralPes of Structural = CatPes **
open MorphoPes, ParadigmsPes, Prelude, NounPes, (R=ResPes) in {
flags optimize=all ;
@@ -32,7 +32,7 @@ concrete StructuralPes of Structural = CatPes **
-- first_Ord = {s = "اولین" ; n = Sg} ; --DEPRECATED
for_Prep = ss "برای" ;
from_Prep = ss "از" ;
he_Pron = personalPN "او" Sg PPers3 ;
he_Pron = personalPN "او" Sg P3 ;
here_Adv = ss "اینجا" ;
here7to_Adv = ss "اینجا" ;
here7from_Adv = ss "اینجا" ;
@@ -41,12 +41,12 @@ concrete StructuralPes of Structural = CatPes **
how8much_IAdv = ss "چقدر" ;
if_Subj = ss "اگر" ;
in8front_Prep = ss "جلوی" ;
i_Pron = personalPN "من" Sg PPers1;
i_Pron = personalPN "من" Sg P1;
in_Prep = ss "در" ;
it_Pron = personalPN "آن" Sg PPers3;
it_Pron = personalPN "آن" Sg P3;
less_CAdv = {s = "کمتر" ; p = ""} ;
many_Det = mkDet ["تعداد زیادی"] Pl True; -- check
more_CAdv = {s = "بیشتر" ; p = "" } ;
more_CAdv = {s = "بیشتر" ; p = "" } ;
most_Predet = ss "اکثر";
much_Det = mkDet ["مقدار زیادی"] Pl ;
must_VV = invarV " بایستن " ** {isAux = True} ; ---- AR
@@ -71,35 +71,35 @@ concrete StructuralPes of Structural = CatPes **
only_Predet = ss "فقط" ;
or_Conj = sd2 [] "یا" ** {n = Sg} ;
otherwise_PConj = ss ["درغیراین صورت"] ;
part_Prep = ss "از" ; -- the object following it should be in Ezafa form
part_Prep = ss "از" ; -- the object following it should be in Ezafa form
please_Voc = ss "لطفاً" ;
possess_Prep = ss "" ; -- will be handeled in Ezafeh
quite_Adv = ss "کاملاً" ;
she_Pron = personalPN "او" Sg PPers3 ;
so_AdA = ss "بسیار" ;
she_Pron = personalPN "او" Sg P3 ;
so_AdA = ss "بسیار" ;
-- somebody_NP = MassNP (UseN (MorphoPnb.mkN11 "کwی" ));
someSg_Det = mkDet "مقداری" Sg True ;
somePl_Det = mkDet "چند" Pl True ;
-- something_NP = MassNP (UseN (MorphoPnb.mkN11 "چیزی"));
somewhere_Adv = ss "جایی" ;
that_Quant = mkQuant "آن" "آن";
that_Subj = ss "آن";
there_Adv = ss "آنجا" ;
somewhere_Adv = ss "جایی" ;
that_Quant = mkQuant "آن" "آن";
that_Subj = ss "آن";
there_Adv = ss "آنجا" ;
there7to_Adv = ss "آنجا" ;
there7from_Adv = ss "آنجا" ;
therefore_PConj = ss ["به همین دلیل"] ;
they_Pron = personalPN ["آن ها"] Pl PPers3 ;
this_Quant = mkQuant "این" "این" ;
therefore_PConj = ss ["به همین دلیل"] ;
they_Pron = personalPN ["آن ها"] Pl P3 ;
this_Quant = mkQuant "این" "این" ;
through_Prep = ss ["از طریق"] ;
too_AdA = ss "خیلی" ;
too_AdA = ss "خیلی" ;
to_Prep = ss "به" ** {lock_Prep = <>};
under_Prep = ss "زیر" ** {lock_Prep = <>};
very_AdA = ss "خیلی" ;
want_VV = mkV "خواستن" "خواه" ** { isAux = False} ;
we_Pron = personalPN "ما" Pl PPers1 ;
want_VV = mkV "خواستن" "خواه" ** { isAux = False} ;
we_Pron = personalPN "ما" Pl P1 ;
whatSg_IP = {s = ["چه چیزی"] ; n = Sg } ;
whatPl_IP = {s = ["چه چیزهایی"] ; n = Pl } ;
when_IAdv = ss "کی" ;
when_IAdv = ss "کی" ;
when_Subj = ss "وقتی" ;
where_IAdv = ss "کجا" ;
which_IQuant = {s = "کدام" ; n = Sg} ;
@@ -112,17 +112,17 @@ concrete StructuralPes of Structural = CatPes **
with_Prep = ss "با";
-- yes_Phr = ss "بله" ;
yes_Utt = ss "بله" ;
youSg_Pron = personalPN "تو" Sg PPers2 ;
youPl_Pron = personalPN "شما" Pl PPers2 ;
youPol_Pron = personalPN "شما" Pl PPers2 ;
-- no_Quant = demoPN "هیچ" ;
youSg_Pron = personalPN "تو" Sg P2 ;
youPl_Pron = personalPN "شما" Pl P2 ;
youPol_Pron = personalPN "شما" Pl P2 ;
-- no_Quant = demoPN "هیچ" ;
not_Predet = {s="نه"} ;
if_then_Conj = sd2 "اگر" "آنگاه" ** {n = Sg} ;
if_then_Conj = sd2 "اگر" "آنگاه" ** {n = Sg} ;
at_least_AdN = ss "حداقل" ;
at_most_AdN = ss "حداکثر";
-- nothing_NP = MassNP (UseN (MorphoPnb.mkN11 "هیچ چیز" ));
-- nothing_NP = MassNP (UseN (MorphoPnb.mkN11 "هیچ چیز" ));
except_Prep = ss ["به جز"] ;
-- nobody_NP = MassNP (UseN (MorphoPnb.mkN11 "هیچ کس"));
-- nobody_NP = MassNP (UseN (MorphoPnb.mkN11 "هیچ کس"));
as_CAdv = {s = ["به اندازه ی"] ; p = ""} ;
@@ -132,126 +132,147 @@ concrete StructuralPes of Structural = CatPes **
---- AR from Nasrin
have_V2 = {
-- have_V2: "have" as an independent verb.
-- MorphoPes.haveVerb: "have" as auxiliary.
have_V2 = haveVerb ** {
s = table {
(VF Pos (PPresent2 PrPerf) PPers1 Sg) => "داشته ام" ;
(VF Pos (PPresent2 PrPerf) PPers1 Pl) => "داشته ایم" ;
(VF Pos (PPresent2 PrPerf) PPers2 Sg) => "داشته ای" ;
(VF Pos (PPresent2 PrPerf) PPers2 Pl) => "داشته اید" ;
(VF Pos (PPresent2 PrPerf) PPers3 Sg) => "داشته است" ;
(VF Pos (PPresent2 PrPerf) PPers3 Pl) => "داشته اند" ;
(VF Pos (PPresent2 PrImperf) PPers1 Sg) => "دارم" ;
(VF Pos (PPresent2 PrImperf) PPers1 Pl) => "داریم" ;
(VF Pos (PPresent2 PrImperf) PPers2 Sg) => " داری" ;
(VF Pos (PPresent2 PrImperf) PPers2 Pl) => "دارید" ;
(VF Pos (PPresent2 PrImperf) PPers3 Sg) => "دارد" ;
(VF Pos (PPresent2 PrImperf) PPers3 Pl) => "دارند" ;
(VF Pos (PPast2 PstPerf) PPers1 Sg) => "داشته بودم" ;
(VF Pos (PPast2 PstPerf) PPers1 Pl) => "داشته بودیم" ;
(VF Pos (PPast2 PstPerf) PPers2 Sg) => "داشته بودی" ;
(VF Pos (PPast2 PstPerf) PPers2 Pl) => "داشته بودید" ;
(VF Pos (PPast2 PstPerf) PPers3 Sg) => "داشته بود" ;
(VF Pos (PPast2 PstPerf) PPers3 Pl) => "داشته بودند" ;
(VF Pos (PPast2 PstImperf) PPers1 Sg) => "می داشتم" ;
(VF Pos (PPast2 PstImperf) PPers1 Pl) => "می داشتیم" ;
(VF Pos (PPast2 PstImperf) PPers2 Sg) => "می داشتی" ;
(VF Pos (PPast2 PstImperf) PPers2 Pl) => "می داشتید" ;
(VF Pos (PPast2 PstImperf) PPers3 Sg) => "می داشت" ;
(VF Pos (PPast2 PstImperf) PPers3 Pl) => "می داشتند" ;
(VF Pos (PPast2 PstAorist) PPers1 Sg) => "داشتم" ;
(VF Pos (PPast2 PstAorist) PPers1 Pl) => "داشتیم" ;
(VF Pos (PPast2 PstAorist) PPers2 Sg) => "داشتی" ;
(VF Pos (PPast2 PstAorist) PPers2 Pl) => "داشتید" ;
(VF Pos (PPast2 PstAorist) PPers3 Sg) => "داشت" ;
(VF Pos (PPast2 PstAorist) PPers3 Pl) => "داشتند" ;
(VF Pos (PFut2 FtAorist) PPers1 Sg) => "خواهم داشت" ;
(VF Pos (PFut2 FtAorist) PPers1 Pl) => "خواهیم داشت" ;
(VF Pos (PFut2 FtAorist) PPers2 Sg) => "خواهی داشت" ;
(VF Pos (PFut2 FtAorist) PPers2 Pl) => "خواهید داشت" ;
(VF Pos (PFut2 FtAorist) PPers3 Sg) => "خواهد داشت" ;
(VF Pos (PFut2 FtAorist) PPers3 Pl) => "خواهند داشت" ;
(VF Pos (Infr_Past2 InfrPerf) PPers1 Sg) => "داشته بوده ام" ;
(VF Pos (Infr_Past2 InfrPerf) PPers1 Pl) => "داشته بوده ایم" ;
(VF Pos (Infr_Past2 InfrPerf) PPers2 Sg) => "داشته بوده ای" ;
(VF Pos (Infr_Past2 InfrPerf) PPers2 Pl) => "داشته بوده اید" ;
(VF Pos (Infr_Past2 InfrPerf) PPers3 Sg) => "داشته بوده است" ;
(VF Pos (Infr_Past2 InfrPerf) PPers3 Pl) => "داشته بوده اند" ;
(VF Pos (Infr_Past2 InfrImperf) PPers1 Sg) => "می داشته ام" ;
(VF Pos (Infr_Past2 InfrImperf) PPers1 Pl) => "می داشته ایم" ;
(VF Pos (Infr_Past2 InfrImperf) PPers2 Sg) => "می داشته ای" ;
(VF Pos (Infr_Past2 InfrImperf) PPers2 Pl) => "می داشته اید" ;
(VF Pos (Infr_Past2 InfrImperf) PPers3 Sg) => "می داشته است" ;
(VF Pos (Infr_Past2 InfrImperf) PPers3 Pl) => "می داشته اند" ;
(VF Neg (PPresent2 PrPerf) PPers1 Sg) => "نداشته ام" ;
(VF Neg (PPresent2 PrPerf) PPers1 Pl) => "نداشته ایم" ;
(VF Neg (PPresent2 PrPerf) PPers2 Sg) => "نداشته ای" ;
(VF Neg (PPresent2 PrPerf) PPers2 Pl) => "نداشته اید" ;
(VF Neg (PPresent2 PrPerf) PPers3 Sg) => "نداشته است" ;
(VF Neg (PPresent2 PrPerf) PPers3 Pl) => "نداشته اند" ;
(VF Neg (PPresent2 PrImperf) PPers1 Sg) => "ندارم" ;
(VF Neg (PPresent2 PrImperf) PPers1 Pl) => "نداریم" ;
(VF Neg (PPresent2 PrImperf) PPers2 Sg) => "نداری" ;
(VF Neg (PPresent2 PrImperf) PPers2 Pl) => "ندارید" ;
(VF Neg (PPresent2 PrImperf) PPers3 Sg) => "ندارد" ;
(VF Neg (PPresent2 PrImperf) PPers3 Pl) => "ندارند" ;
(VF Neg (PPast2 PstPerf) PPers1 Sg) => "نداشته بودم" ;
(VF Neg (PPast2 PstPerf) PPers1 Pl) => "نداشته بودیم" ;
(VF Neg (PPast2 PstPerf) PPers2 Sg) => "نداشته بودی" ;
(VF Neg (PPast2 PstPerf) PPers2 Pl) => "نداشته بودید" ;
(VF Neg (PPast2 PstPerf) PPers3 Sg) => "نداشته بود" ;
(VF Neg (PPast2 PstPerf) PPers3 Pl) => "نداشته بودند" ;
(VF Neg (PPast2 PstImperf) PPers1 Sg) => "نمی داشتم" ;
(VF Neg (PPast2 PstImperf) PPers1 Pl) => "نمی داشتیم" ;
(VF Neg (PPast2 PstImperf) PPers2 Sg) => "نمی داشتی" ;
(VF Neg (PPast2 PstImperf) PPers2 Pl) => "نمی داشتید" ;
(VF Neg (PPast2 PstImperf) PPers3 Sg) => "نمی داشت" ;
(VF Neg (PPast2 PstImperf) PPers3 Pl) => "نمی داشتند" ;
(VF Neg (PPast2 PstAorist) PPers1 Sg) => "نداشتم" ;
(VF Neg (PPast2 PstAorist) PPers1 Pl) => "نداشتیم" ;
(VF Neg (PPast2 PstAorist) PPers2 Sg) => "نداشتی" ;
(VF Neg (PPast2 PstAorist) PPers2 Pl) => "نداشتید" ;
(VF Neg (PPast2 PstAorist) PPers3 Sg) => "نداشت" ;
(VF Neg (PPast2 PstAorist) PPers3 Pl) => "نداشتند" ;
(VF Neg (PFut2 FtAorist) PPers1 Sg) => "نخواهم داشت" ;
(VF Neg (PFut2 FtAorist) PPers1 Pl) => "نخواهیم داشت" ;
(VF Neg (PFut2 FtAorist) PPers2 Sg) => "نخواهی داشت" ;
(VF Neg (PFut2 FtAorist) PPers2 Pl) => "نخواهید داشت" ;
(VF Neg (PFut2 FtAorist) PPers3 Sg) => "نخواهد داشت" ;
(VF Neg (PFut2 FtAorist) PPers3 Pl) => "نخواهند داشت" ;
(VF Neg (Infr_Past2 InfrPerf) PPers1 Sg) => "نداشته بوده ام" ;
(VF Neg (Infr_Past2 InfrPerf) PPers1 Pl) => "نداشته بوده ایم" ;
(VF Neg (Infr_Past2 InfrPerf) PPers2 Sg) => "نداشته بوده ای" ;
(VF Neg (Infr_Past2 InfrPerf) PPers2 Pl) => "نداشته بوده اید" ;
(VF Neg (Infr_Past2 InfrPerf) PPers3 Sg) => "نداشته بوده است" ;
(VF Neg (Infr_Past2 InfrPerf) PPers3 Pl) => "نداشته بوده اند" ;
(VF Neg (Infr_Past2 InfrImperf) PPers1 Sg) => "نمی داشته ام" ;
(VF Neg (Infr_Past2 InfrImperf) PPers1 Pl) => "نمی داشته ایم" ;
(VF Neg (Infr_Past2 InfrImperf) PPers2 Sg) => "نمی داشته ای" ;
(VF Neg (Infr_Past2 InfrImperf) PPers2 Pl) => "نمی داشته اید" ;
(VF Neg (Infr_Past2 InfrImperf) PPers3 Sg) => "نمی داشته است" ;
(VF Neg (Infr_Past2 InfrImperf) PPers3 Pl) => "نمی داشته اند" ;
(Vvform (AgPes Sg PPers1)) => "بدارم" ;
(Vvform (AgPes Sg PPers2)) => "بداری" ;
(Vvform (AgPes Sg PPers3)) => "بدارد" ;
(Vvform (AgPes Pl PPers1)) => "بداریم" ;
(Vvform (AgPes Pl PPers2)) => "بدارید" ;
(Vvform (AgPes Pl PPers3)) => "بدارند" ;
R.Imp Pos Sg => "داشته باش" ;
R.Imp Pos Pl => "داشته باشید" ;
R.Imp Neg Sg => "نداشته باش" ;
R.Imp Neg Pl => "نداشته باشید" ;
Vvform (Ag Sg P1) => "داشته باشم" ;
Vvform (Ag Sg P2) => "داشته باشی" ;
Vvform (Ag Sg P3) => "داشته باشد" ;
Vvform (Ag Pl P1) => "داشته باشیم" ;
Vvform (Ag Pl P2) => "داشته باشید" ;
Vvform (Ag Pl P3) => "داشته باشند" ;
x => haveVerb.s ! x } ;
c2 = {
s = [] ;
ra = [] ; --- "را" ; ---- AR 18/9/2017: usually no ra acc. to Nasrin, but this is tricky
c = R.VTrans
}
} ;
--have_V2 = {
have_nasrin_V2 = {
s = table {
(VF Pos (PPresent2 PrPerf) P1 Sg) => "داشته ام" ;
(VF Pos (PPresent2 PrPerf) P1 Pl) => "داشته ایم" ;
(VF Pos (PPresent2 PrPerf) P2 Sg) => "داشته ای" ;
(VF Pos (PPresent2 PrPerf) P2 Pl) => "داشته اید" ;
(VF Pos (PPresent2 PrPerf) P3 Sg) => "داشته است" ;
(VF Pos (PPresent2 PrPerf) P3 Pl) => "داشته اند" ;
(VF Pos (PPresent2 PrImperf) P1 Sg) => "دارم" ;
(VF Pos (PPresent2 PrImperf) P1 Pl) => "داریم" ;
(VF Pos (PPresent2 PrImperf) P2 Sg) => " داری" ;
(VF Pos (PPresent2 PrImperf) P2 Pl) => "دارید" ;
(VF Pos (PPresent2 PrImperf) P3 Sg) => "دارد" ;
(VF Pos (PPresent2 PrImperf) P3 Pl) => "دارند" ;
(VF Pos (PPast2 PstPerf) P1 Sg) => "داشته بودم" ;
(VF Pos (PPast2 PstPerf) P1 Pl) => "داشته بودیم" ;
(VF Pos (PPast2 PstPerf) P2 Sg) => "داشته بودی" ;
(VF Pos (PPast2 PstPerf) P2 Pl) => "داشته بودید" ;
(VF Pos (PPast2 PstPerf) P3 Sg) => "داشته بود" ;
(VF Pos (PPast2 PstPerf) P3 Pl) => "داشته بودند" ;
(VF Pos (PPast2 PstImperf) P1 Sg) => "می داشتم" ;
(VF Pos (PPast2 PstImperf) P1 Pl) => "می داشتیم" ;
(VF Pos (PPast2 PstImperf) P2 Sg) => "می داشتی" ;
(VF Pos (PPast2 PstImperf) P2 Pl) => "می داشتید" ;
(VF Pos (PPast2 PstImperf) P3 Sg) => "می داشت" ;
(VF Pos (PPast2 PstImperf) P3 Pl) => "می داشتند" ;
(VF Pos (PPast2 PstAorist) P1 Sg) => "داشتم" ;
(VF Pos (PPast2 PstAorist) P1 Pl) => "داشتیم" ;
(VF Pos (PPast2 PstAorist) P2 Sg) => "داشتی" ;
(VF Pos (PPast2 PstAorist) P2 Pl) => "داشتید" ;
(VF Pos (PPast2 PstAorist) P3 Sg) => "داشت" ;
(VF Pos (PPast2 PstAorist) P3 Pl) => "داشتند" ;
(VF Pos (PFut2 FtAorist) P1 Sg) => "خواهم داشت" ;
(VF Pos (PFut2 FtAorist) P1 Pl) => "خواهیم داشت" ;
(VF Pos (PFut2 FtAorist) P2 Sg) => "خواهی داشت" ;
(VF Pos (PFut2 FtAorist) P2 Pl) => "خواهید داشت" ;
(VF Pos (PFut2 FtAorist) P3 Sg) => "خواهد داشت" ;
(VF Pos (PFut2 FtAorist) P3 Pl) => "خواهند داشت" ;
(VF Pos (Infr_Past2 InfrPerf) P1 Sg) => "داشته بوده ام" ;
(VF Pos (Infr_Past2 InfrPerf) P1 Pl) => "داشته بوده ایم" ;
(VF Pos (Infr_Past2 InfrPerf) P2 Sg) => "داشته بوده ای" ;
(VF Pos (Infr_Past2 InfrPerf) P2 Pl) => "داشته بوده اید" ;
(VF Pos (Infr_Past2 InfrPerf) P3 Sg) => "داشته بوده است" ;
(VF Pos (Infr_Past2 InfrPerf) P3 Pl) => "داشته بوده اند" ;
(VF Pos (Infr_Past2 InfrImperf) P1 Sg) => "می داشته ام" ;
(VF Pos (Infr_Past2 InfrImperf) P1 Pl) => "می داشته ایم" ;
(VF Pos (Infr_Past2 InfrImperf) P2 Sg) => "می داشته ای" ;
(VF Pos (Infr_Past2 InfrImperf) P2 Pl) => "می داشته اید" ;
(VF Pos (Infr_Past2 InfrImperf) P3 Sg) => "می داشته است" ;
(VF Pos (Infr_Past2 InfrImperf) P3 Pl) => "می داشته اند" ;
(VF Neg (PPresent2 PrPerf) P1 Sg) => "نداشته ام" ;
(VF Neg (PPresent2 PrPerf) P1 Pl) => "نداشته ایم" ;
(VF Neg (PPresent2 PrPerf) P2 Sg) => "نداشته ای" ;
(VF Neg (PPresent2 PrPerf) P2 Pl) => "نداشته اید" ;
(VF Neg (PPresent2 PrPerf) P3 Sg) => "نداشته است" ;
(VF Neg (PPresent2 PrPerf) P3 Pl) => "نداشته اند" ;
(VF Neg (PPresent2 PrImperf) P1 Sg) => "ندارم" ;
(VF Neg (PPresent2 PrImperf) P1 Pl) => "نداریم" ;
(VF Neg (PPresent2 PrImperf) P2 Sg) => "نداری" ;
(VF Neg (PPresent2 PrImperf) P2 Pl) => "ندارید" ;
(VF Neg (PPresent2 PrImperf) P3 Sg) => "ندارد" ;
(VF Neg (PPresent2 PrImperf) P3 Pl) => "ندارند" ;
(VF Neg (PPast2 PstPerf) P1 Sg) => "نداشته بودم" ;
(VF Neg (PPast2 PstPerf) P1 Pl) => "نداشته بودیم" ;
(VF Neg (PPast2 PstPerf) P2 Sg) => "نداشته بودی" ;
(VF Neg (PPast2 PstPerf) P2 Pl) => "نداشته بودید" ;
(VF Neg (PPast2 PstPerf) P3 Sg) => "نداشته بود" ;
(VF Neg (PPast2 PstPerf) P3 Pl) => "نداشته بودند" ;
(VF Neg (PPast2 PstImperf) P1 Sg) => "نمی داشتم" ;
(VF Neg (PPast2 PstImperf) P1 Pl) => "نمی داشتیم" ;
(VF Neg (PPast2 PstImperf) P2 Sg) => "نمی داشتی" ;
(VF Neg (PPast2 PstImperf) P2 Pl) => "نمی داشتید" ;
(VF Neg (PPast2 PstImperf) P3 Sg) => "نمی داشت" ;
(VF Neg (PPast2 PstImperf) P3 Pl) => "نمی داشتند" ;
(VF Neg (PPast2 PstAorist) P1 Sg) => "نداشتم" ;
(VF Neg (PPast2 PstAorist) P1 Pl) => "نداشتیم" ;
(VF Neg (PPast2 PstAorist) P2 Sg) => "نداشتی" ;
(VF Neg (PPast2 PstAorist) P2 Pl) => "نداشتید" ;
(VF Neg (PPast2 PstAorist) P3 Sg) => "نداشت" ;
(VF Neg (PPast2 PstAorist) P3 Pl) => "نداشتند" ;
(VF Neg (PFut2 FtAorist) P1 Sg) => "نخواهم داشت" ;
(VF Neg (PFut2 FtAorist) P1 Pl) => "نخواهیم داشت" ;
(VF Neg (PFut2 FtAorist) P2 Sg) => "نخواهی داشت" ;
(VF Neg (PFut2 FtAorist) P2 Pl) => "نخواهید داشت" ;
(VF Neg (PFut2 FtAorist) P3 Sg) => "نخواهد داشت" ;
(VF Neg (PFut2 FtAorist) P3 Pl) => "نخواهند داشت" ;
(VF Neg (Infr_Past2 InfrPerf) P1 Sg) => "نداشته بوده ام" ;
(VF Neg (Infr_Past2 InfrPerf) P1 Pl) => "نداشته بوده ایم" ;
(VF Neg (Infr_Past2 InfrPerf) P2 Sg) => "نداشته بوده ای" ;
(VF Neg (Infr_Past2 InfrPerf) P2 Pl) => "نداشته بوده اید" ;
(VF Neg (Infr_Past2 InfrPerf) P3 Sg) => "نداشته بوده است" ;
(VF Neg (Infr_Past2 InfrPerf) P3 Pl) => "نداشته بوده اند" ;
(VF Neg (Infr_Past2 InfrImperf) P1 Sg) => "نمی داشته ام" ;
(VF Neg (Infr_Past2 InfrImperf) P1 Pl) => "نمی داشته ایم" ;
(VF Neg (Infr_Past2 InfrImperf) P2 Sg) => "نمی داشته ای" ;
(VF Neg (Infr_Past2 InfrImperf) P2 Pl) => "نمی داشته اید" ;
(VF Neg (Infr_Past2 InfrImperf) P3 Sg) => "نمی داشته است" ;
(VF Neg (Infr_Past2 InfrImperf) P3 Pl) => "نمی داشته اند" ;
(Vvform (Ag Sg P1)) => "بدارم" ;
(Vvform (Ag Sg P2)) => "بداری" ;
(Vvform (Ag Sg P3)) => "بدارد" ;
(Vvform (Ag Pl P1)) => "بداریم" ;
(Vvform (Ag Pl P2)) => "بدارید" ;
(Vvform (Ag Pl P3)) => "بدارند" ;
(R.Imp Pos Sg) => "بدار" ;
(R.Imp Pos Pl) => "بدارید" ;
(R.Imp Neg Sg) => "ندار" ;
(R.Imp Neg Pl) => "ندارید" ;
Inf => "داشتن" ;
Root1 => "داشت" ;
Root2 => "دار"
Root2 => "دار"
} ;
c2 = {
s = [] ;
ra = [] ; --- "را" ; ---- AR 18/9/2017: usually no ra acc. to Nasrin, but this is tricky
ra = [] ; --- "را" ; ---- AR 18/9/2017: usually no ra acc. to Nasrin, but this is tricky
c = R.VTrans
}
} ;
}