1
0
forked from GitHub/gf-core

ParseHinandExtraUrd

This commit is contained in:
virk.shafqat
2012-11-27 14:00:14 +00:00
parent 53e6546a53
commit ebe553f4f8
9 changed files with 345 additions and 128 deletions

View File

@@ -24,4 +24,52 @@ flags coding = utf8 ;
-- added for causitives
make_CV = mkVerb "नoतहिनग" ** {c2 = "" };
-- for VP conjunction
}
lincat
VPS = {s : Agr => Str} ;
[VPS] = {s1,s2 : Agr => Str} ;
lin
BaseVPS = twoTable Agr ;
ConsVPS = consrTable Agr comma ;
PredVPS np vpi = {s = np.s ! NPC Dir ++ vpi.s ! np.a} ;
MkVPS t p vp = {
s = \\a =>
let
verb = vp.s ! (VPTense VPPast a) ; -- this needs to be fixed --vp.s ! t.t ! t.a ! p.p ! ODir ! a ;
verbf = verb.fin ++ verb.inf ;
in t.s ++ p.s ++ vp.ad ++ vp.cvp ++ verbf ++ vp.obj.s ++ vp.comp ! a
} ;
ConjVPS = conjunctDistrTable Agr ;
-- ComplVPIVV vv vpi =
-- insertObj (\\a => vpi.s ! vv.typ ! a) (predVV vv) ;
--PassVPSlash vps = vps ;
-- in progress
PassVPSlash vps =
let
aux = predV (mkV "जाना")
in {
-- s = be.s ;
s = table {
VPTense tense agr => {inf = (vps.s ! VPTense VPPast agr).inf ++ (aux.s ! VPTense tense agr).inf ;
fin = (aux.s ! VPTense tense agr).fin};
vform => {inf = (vps.s ! vform).inf ++ (aux.s!vform).inf; fin = (vps.s!vform).inf}
};
obj = vps.obj ;
subj = vps.subj ;
inf = (vps.s ! VPTense VPPast (Ag Masc Sg Pers3_Distant)).inf ++ aux.inf; --this is not correct since, in this case the infinitive form will also inflect for agr i.e. khaya jana, khai jani etc
ad = vps.ad;
embComp = vps.embComp;
prog = vps.prog ;
comp = vps.comp ;
cvp = vps.cvp
} ;
}

View File

@@ -1,40 +1,43 @@
--# -path=alltenses:../abstract:../english
--# -path=.:alltenses:../abstract:../english
concrete ParseHin of ParseEngAbs =
TenseX - [AdN,Adv,SC],
TenseX - [AdN,Adv,SC,PPos,PNeg],
-- TextX - [AdN,Adv,SC],
CatHin,
NounHin,
NounHin - [PPartNP],
AdjectiveHin,
NumeralHin,
-- SymbolHin,
ConjunctionHin,
VerbHin - [SlashV2V, PassV2],
VerbHin - [PassV2,ComplVV],
AdverbHin,
PhraseHin,
SentenceHin,
RelativeHin,
QuestionHin,
SymbolHin [PN, Symb, String, CN, Card, NP, MkSymb, SymbPN, CNNumNP],
-- StructuralHin,
IdiomHin [NP, VP, Tense, Cl, ProgrVP, ExistNP],
ExtraHin [NP, Quant, VPSlash, VP, Tense, GenNP, PassVPSlash],
-- DictHin **
DictHinWSJ **
open MorphoHin, ResHin, ParadigmsHin, ParamX, CommonHindustani, Prelude in {
ExtraHin [NP, Quant, VPSlash, VP, Tense, GenNP, PassVPSlash,Temp,Pol,Conj,VPS,ListVPS,S,Num, CN,
RP, MkVPS, BaseVPS, ConsVPS, ConjVPS, PredVPS, GenRP,VPI, VPIForm, VPIInf, VPIPresPart, ListVPI,
VV, MkVPI, BaseVPI, ConsVPI, ConjVPI, ComplVPIVV,ClSlash, RCl, EmptyRelSlash],
DictHinMath **
-- DictHin **
open MorphoHin, ResHin, ParadigmsHin,CommonX, CommonHindustani, Prelude in {
flags
literal=Symb ;
lin
{- myself_NP = regNP "myself" singular ;
yourselfSg_NP = regNP "yourself" singular ;
himself_NP = regNP "himself" singular ;
herself_NP = regNP "herself" singular ;
itself_NP = regNP "itself" singular ;
ourself_NP = regNP "ourself" plural ;
yourselfPl_NP = regNP "yourself" plural ;
themself_NP = regNP "themself" plural ;
-}
myself_NP = {s = \\_ => kwd ; a = Ag Masc Sg Pers1 };
yourselfSg_NP = {s = \\_ => kwd ; a = Ag Masc Sg Pers2_Respect }; --regNP "yourself" singular ;
himself_NP = {s = \\_ => kwd ; a = Ag Masc Sg Pers3_Distant }; --regNP "himself" singular ;
herself_NP = {s = \\_ => kwd ; a = Ag Fem Sg Pers3_Distant }; --regNP "herself" singular ;
itself_NP = {s = \\_ => kwd ; a = Ag Masc Sg Pers3_Near }; --regNP "itself" singular ;
ourself_NP = {s = \\_ => kwd ; a = Ag Masc Pl Pers1 }; --regNP "ourself" plural ;
yourselfPl_NP = {s = \\_ => kwd ; a = Ag Masc Pl Pers2_Respect }; --regNP "yourself" plural ;
themself_NP = {s = \\_ => kwd ; a = Ag Masc Pl Pers3_Distant }; --regNP "themself" plural ;
CompoundCN num noun cn = {
s = \\n,c => num.s ++ noun.s ! num.n ! Dir ++ cn.s ! n ! c ;
s = \\n,c => num.s ++ cn.s ! n ! c ++ noun.s ! num.n ! Dir;
g = cn.g
} ;
@@ -44,16 +47,16 @@ lin
} ;
GerundN v = {
s = \\n,c => v.cvp ++ v.s ! Inf_Obl ; --the main verb of compound verbs
s = \\n,c => v.cvp ++ v.s ! Inf ; -- v.s ! VF Imperf Pers2_Casual n Masc ++ hwa (Ag Masc n Pers2_Casual) ; --the main verb of compound verbs
g = Masc
} ;
GerundAP v = {
s = \\_,_,_,_ => v.cvp ++ v.s ! Inf --the main verb of compound verbs
s = \\n,g,_,_ => v.cvp ++ v.s ! VF Imperf Pers2_Casual n g ++ hwa (Ag g n Pers2_Casual) ;
} ;
PastPartAP v = {
s = \\_,_,_,_ => v.cvp ++ v.s ! Inf -- the main verb of compound versb needs to be attached here
s = \\n,g,_,_ => v.cvp ++ v.s ! VF Imperf Pers2_Casual n g ; -- the main verb of compound versb needs to be attached here
} ;
-- OrdCompar a = {s = \\c => a.s ! AAdj Compar c } ;
@@ -61,10 +64,37 @@ lin
PositAdVAdj a = {s = a.s ! Sg ! Masc ! Dir ! Posit} ;
---------------
--SlashV2V v p vp = insertVV (infV2V v.isAux vp) (predV v) vp.embComp ** {c2 = {s = sE ; c = VTrans}}; -- changed from VTransPost
ComplVV v a p vp = insertTrans (insertVV (infVV v.isAux vp) (predV v) vp.embComp ) VTrans; -- changed from VTransPost
---------------
-- UseQuantPN q pn = {s = \\c => q.s ! Sg ! Masc ! Dir ++ pn.s ! c ; a = agrP3 Sg pn.g} ;
UseQuantPN q pn = {s = \\c => q.s ! Sg ! pn.g ! Dir ++ pn.s ! Dir ; a = agrP3 pn.g Sg} ;
PredVPosv np vp = mkClause np vp ; --{
{- s = \\t,a,b,o =>
let
verb = vp.s ! t ! a ! b ! o ! np.a ;
compl = vp.s2 ! np.a
in
case o of {
ODir => compl ++ "," ++ np.s ! npNom ++ verb.aux ++ vp.ad ++ verb.fin ++ verb.adv ++ verb.inf ;
OQuest => verb.aux ++ compl ++ "," ++ np.s ! npNom ++ verb.adv ++ vp.ad ++ verb.fin ++ verb.inf
}
} ;
-}
PredVPovs np vp = mkClause np vp ; --{
{- s = \\t,a,b,o =>
let
verb = vp.s ! t ! a ! b ! o ! np.a ;
compl = vp.s2 ! np.a
in
case o of {
ODir => compl ++ verb.aux ++ verb.adv ++ vp.ad ++ verb.fin ++ verb.inf ++ np.s ! npNom ;
OQuest => verb.aux ++ compl ++ verb.adv ++ vp.ad ++ verb.fin ++ verb.inf ++ np.s ! npNom
}
} ;
-}
{-
SlashV2V v p vp = insertObjc (\\a => p.s ++ case p.p of {CPos => ""; _ => "not"} ++
v.c3 ++
@@ -83,20 +113,24 @@ lin
}
} ;
-}
CompVP ant p vp = {s = \\a => ant.s ++ p.s ++
infVP False vp a} ; -- check for vp.isAux
that_RP = {
s = \\_,_ => "kh" ;
a = RNoAg
} ;
no_RP = {
s = \\_,_ => "" ;
a = RNoAg
} ;
--no_RP = {
-- s = \\_,_ => "" ;
-- a = RNoAg
-- } ;
CompS s = {s = \\_ => "kh" ++ s.s} ;
-- CompVP vp = {s = \\a => infVP VVInf vp a} ;
--lin
-- PPos = {s = [] ; p = CPos} ;
-- PNeg = {s = [] ; p = CNeg True} ; -- contracted: don't
lin
PPos = {s = [] ; p = Pos} ;
PNeg = {s = [] ; p = Neg} ; -- contracted: don't
UncNeg = {s = [] ; p = Neg} ;
}

View File

@@ -24,4 +24,52 @@ flags coding = utf8 ;
-- added for causitives
make_CV = mkVerb "nothing" ** {c2 = "" };
-- for VP conjunction
}
lincat
VPS = {s : Agr => Str} ;
[VPS] = {s1,s2 : Agr => Str} ;
lin
BaseVPS = twoTable Agr ;
ConsVPS = consrTable Agr comma ;
PredVPS np vpi = {s = np.s ! NPC Dir ++ vpi.s ! np.a} ;
MkVPS t p vp = {
s = \\a =>
let
verb = vp.s ! (VPTense VPPast a) ; -- this needs to be fixed --vp.s ! t.t ! t.a ! p.p ! ODir ! a ;
verbf = verb.fin ++ verb.inf ;
in t.s ++ p.s ++ vp.ad ++ vp.cvp ++ verbf ++ vp.obj.s ++ vp.comp ! a
} ;
ConjVPS = conjunctDistrTable Agr ;
-- ComplVPIVV vv vpi =
-- insertObj (\\a => vpi.s ! vv.typ ! a) (predVV vv) ;
--PassVPSlash vps = vps ;
-- in progress
PassVPSlash vps =
let
aux = predV (mkV "ja:na:")
in {
-- s = be.s ;
s = table {
VPTense tense agr => {inf = (vps.s ! VPTense VPPast agr).inf ++ (aux.s ! VPTense tense agr).inf ;
fin = (aux.s ! VPTense tense agr).fin};
vform => {inf = (vps.s ! vform).inf ++ (aux.s!vform).inf; fin = (vps.s!vform).inf}
};
obj = vps.obj ;
subj = vps.subj ;
inf = (vps.s ! VPTense VPPast (Ag Masc Sg Pers3_Distant)).inf ++ aux.inf; --this is not correct since, in this case the infinitive form will also inflect for agr i.e. khaya jana, khai jani etc
ad = vps.ad;
embComp = vps.embComp;
prog = vps.prog ;
comp = vps.comp ;
cvp = vps.cvp
} ;
}

View File

@@ -19,7 +19,7 @@ incomplete concrete QuestionHindustani of Question =
qp1 = qp.s ! Dir;
qp2 = qp.s ! Obl ++ nE
in { s = \\t,p,o => case t of {
VPImpPast => case vp.subj of {VIntrans => qp1 ++ cl.s ! t ! p ! ODir; _ => qp2 ++ cl.s ! t ! p ! ODir};
VPImpPast => case vp.subj of {VIntrans => qp1 ++ cl.s ! t ! p ! ODir; _ => qp2 ++ cl.s ! t ! p ! ODir};
_ => qp1 ++ cl.s ! t ! p ! ODir
}
};

View File

@@ -53,7 +53,7 @@ incomplete concrete SentenceHindustani of Sentence =
<Past,Anter> => temp.s ++ p.s ++ cl.s ! VPPerfPast ! p.p ! ODir;
<Fut,Simul> => temp.s ++ p.s ++ cl.s ! VPFut ! p.p ! ODir;
<Fut,Anter> => temp.s ++ p.s ++ cl.s ! VPPerfFut ! p.p ! ODir;
<Cond,Simul> => temp.s ++ p.s ++ cl.s ! VPSubj ! p.p ! ODir;
<Cond,Simul> => temp.s ++ p.s ++ cl.s ! VPFut ! p.p ! ODir; --cl.s ! VPSubj ! p.p ! ODir;
<Cond,Anter> => temp.s ++ p.s ++ cl.s ! VPSubj ! p.p ! ODir -- this needs to be fixed by making SubjPerf in ResUrd
};
@@ -66,7 +66,7 @@ incomplete concrete SentenceHindustani of Sentence =
<Past,Anter> => temp.s ++ p.s ++ cl.s ! VPPerfPast ! p.p ! q;
<Fut,Simul> => temp.s ++ p.s ++ cl.s ! VPFut ! p.p ! q;
<Fut,Anter> => temp.s ++ p.s ++ cl.s ! VPPerfFut ! p.p ! q;
<Cond,Simul> => temp.s ++ p.s ++ cl.s ! VPSubj ! p.p ! q;
<Cond,Simul> => temp.s ++ p.s ++ cl.s ! VPFut ! p.p ! q; -- cl.s ! VPSubj ! p.p ! q;
<Cond,Anter> => temp.s ++ p.s ++ cl.s ! VPSubj ! p.p ! q
};
@@ -79,7 +79,7 @@ incomplete concrete SentenceHindustani of Sentence =
<Past,Anter> => temp.s ++ p.s ++ rcl.s ! VPPerfPast ! p.p ! ODir ! q;
<Fut,Simul> => temp.s ++ p.s ++ rcl.s ! VPFut ! p.p ! ODir ! q;
<Fut,Anter> => temp.s ++ p.s ++ rcl.s ! VPPerfFut ! p.p ! ODir ! q;
<Cond,Simul> => temp.s ++ p.s ++ rcl.s ! VPSubj ! p.p ! ODir ! q;
<Cond,Simul> => temp.s ++ p.s ++ rcl.s ! VPFut ! p.p ! ODir ! q; --rcl.s ! VPSubj ! p.p ! ODir ! q;
<Cond,Anter> => temp.s ++ p.s ++ rcl.s ! VPSubj ! p.p ! ODir ! q
};
c = rcl.c
@@ -92,7 +92,7 @@ incomplete concrete SentenceHindustani of Sentence =
<Past,Anter> => temp.s ++ p.s ++ clslash.s ! VPPerfPast ! p.p ! ODir;
<Fut,Simul> => temp.s ++ p.s ++ clslash.s ! VPFut ! p.p ! ODir;
<Fut,Anter> => temp.s ++ p.s ++ clslash.s ! VPPerfFut ! p.p ! ODir;
<Cond,Simul> => temp.s ++ p.s ++ clslash.s ! VPSubj ! p.p ! ODir;
<Cond,Simul> => temp.s ++ p.s ++ clslash.s ! VPFut ! p.p ! ODir; --clslash.s ! VPSubj ! p.p ! ODir;
<Cond,Anter> => temp.s ++ p.s ++ clslash.s ! VPSubj ! p.p ! ODir
};
c2 = clslash.c2

View File

@@ -207,7 +207,7 @@ lin accordingly_Adv = mkAdv "اس واسطے" ;
lin accordion_N = mkN "مخصوص باجا" ;
lin accost_V2 = mkV2 (compoundV "خطاب" (mkV "کرنا")) ; -- from DictUrd
lin accouchement_N = mkN "زچگی" ;
lin account_N = mkN "بیان" ; -- from DictUrd
lin account_N = mkN "اکاونٹ" "اکاونٹ" "اکاونٹ" "اکاونٹس" "اکاونٹس" "اکانٹس" Masc ; -- from DictUrd --changed
lin account_V = compoundV "حساب" (mkV "کتاب") ;
lin account_V2 = mkV2 (compoundV "حساب" (mkV "لینا")) ; -- from DictUrd
lin accountable_A = mkA "تابع احتساب" ; -- from DictUrd
@@ -1239,7 +1239,7 @@ lin apoplexy_N = mkN "بے حسی کی حالت" ; -- from DictUrd
lin apostasy_N = mkN "الحاد" ; -- from DictUrd
lin apostate_A = mkA "مرتد" ;
lin apostate_N = mkN "مرتد" ; -- from DictUrd
lin apostle_N = mkN "حواری" ; -- from DictUrd
lin apostle_N = mkN "پیغمبر" ; -- from DictUrd --changed
lin apostolic_A = mkA "رسولی" ; -- from DictUrd
lin apostrophe_N = mkN "خطاب" ;
lin apothecary_N = mkN "عطار" ; -- from DictUrd
@@ -1557,11 +1557,11 @@ lin asiatic_N = mkN "ایشیائی" ;
lin aside_Adv = mkAdv "بہ کنار" ; -- from DictUrd
lin aside_N = mkN "کانا پھونی" ; -- from DictUrd
lin asinine_A = mkA "احمق" ; -- from DictUrd
lin ask_V = mkV "مانگنا" ;
lin ask_V2 = mkV2 (mkV "کہنا") ; -- from DictUrd
--lin ask_V2V = mkV2 (mkV "مانگنا") ;
lin ask_VS = mkVS (mkV "مانگنا") ;
lin ask_VQ = mkVQ (mkV "مانگنا" );
lin ask_V = mkV "پوچھنا" ;
lin ask_V2 = mkV2 (mkV "پوچھنا") ; -- from DictUrd --changed
--lin ask_V2V = mkV2 (mkV "مانگنا") ; --changed
lin ask_VS = mkVS (mkV "پوچھنا") ; --changed
lin ask_VQ = mkVQ (mkV "پوچھنا" ); --changed
lin askance_Adv = mkAdv "بغلی راہ سے" ;
lin askew_A = mkA "کج" ; -- from DictUrd
lin askew_Adv = mkAdv "ترچھی يا ٹيڑھی وضع ميں" ;
@@ -2303,7 +2303,7 @@ lin beam_N = mkN "کڑی" ; -- from DictUrd
lin beam_V = mkV "کرن" ;
lin beam_V2 = mkV2 (mkV "کرن") ;
lin bean_N = mkN "پھلی" ; -- from DictUrd
lin bear_N = mkN "سنبھالنا" ;
lin bear_N = mkN "برداشت" ; --changed
lin bear_V = compoundV "صبر" (mkV "آنا") ; -- from DictUrd
lin bear_V2 = mkV2 (compoundV "برداشت" (mkV "کرنا")) ; -- from DictUrd
lin bearable_A = mkA "گوارا" ; -- from DictUrd
@@ -2344,8 +2344,8 @@ lin beckon_V = mkV "بلانا" ;
lin beckon_V2 = mkV2 (mkV "بلانا") ;
lin become_V = mkV "بننا" ; -- from DictUrd
lin become_V2 = mkV2 (compoundV "بن" (mkV "جانا")) ; -- from DictUrd
lin become_VA = mkV "ہوجانا" ;
lin become_VS = mkVS (mkV "ہوجانا") ;
lin become_VA = mkV "ہونا" ; --changed
lin become_VS = mkVS (mkV "ہونا") ; --changed
lin becoming_A = mkA "موزوں" ;
lin bed_N = mkN "بستر" ; -- from DictUrd
lin bed_V2 = mkV2 (compoundV "کیاری" (mkV "بنانا")) ;
@@ -2633,7 +2633,7 @@ lin bilingual_N = mkN "دو زبانیں بولنا" ;
lin bilious_A = mkA "صفراوی" ; -- from DictUrd
lin biliousness_N = mkN "چڑچڑا پن" ;
lin bilk_V2 = mkV2 (compoundV "دھوکا" (mkV "دینا")) ; -- from DictUrd
lin bill_N = mkN "حساب" ; -- from DictUrd
lin bill_N = mkN "بل" ; -- from DictUrd --changed
lin bill_PN = mkPN "چونچ" ;
lin bill_V = mkV "چونچ" ;
lin bill_V2 = mkV2 (mkV "چونچ") ;
@@ -3023,7 +3023,7 @@ lin boob_N = mkN "چھوچی" ; -- from DictUrd
lin boob_V = compoundV "سادہ" (mkV "لوح") ;
lin booby_N = mkN "احمق" ; -- from DictUrd
lin booby_trap_N = mkN "احمق سے مذاق" ;
lin book_N = mkN "دستاویز" ; -- from DictUrd
lin book_N = mkN "کتاب" ; -- from DictUrd --changed
lin book_V2 = mkV2 (mkV "کتاب") ;
lin book_keeper_N = mkN "روزنامچہ نویس" ;
lin bookcase_N = mkN "کتابوں کی الماری" ;
@@ -3645,7 +3645,7 @@ lin buttress_V2 = mkV2 (compoundV "پشتہ بندی" (mkV "کرنا")) ;
lin buxom_A = mkA "چنچل" ; -- from DictUrd
lin buy_N = mkN "خریدنا" ;
lin buy_V = mkV "خریدنا" ;
lin buy_V2 = mkV2 (mkV "خریدنا") ; -- from DictUrd
lin buy_V2 = mkV2 (mkV "خریدنا") "کو"; -- from DictUrd --changed
lin buyer_N = mkN "خریدار" ; -- from DictUrd
lin buzz_N = mkN "بھنبھناہٹ" ;
lin buzz_V = mkV "بھنبھناہٹ" ;
@@ -5286,7 +5286,7 @@ lin combine_V2 = mkV2 (compoundV "ایکا" (mkV "کرنا")) ; -- from Di
lin combustible_A = mkA "آتش پزیر" ; -- from DictUrd
lin combustible_N = mkN "احتراق" ;
lin combustion_N = mkN "آتش پزیری" ; -- from DictUrd
lin come_V = compoundV "آ" (mkV "جانا") ; -- from DictUrd
lin come_V = mkV "آنا" ; -- from DictUrd --changed
lin come_V2 = mkV2 (mkV "آنا") ;
lin come_VA = mkV "آنا" ;
lin come_VS = mkVS (mkV "آنا") ;
@@ -5404,7 +5404,7 @@ lin compact_V2 = mkV2 (mkV "گاڑی") ;
lin companion_N = mkN "حاشیہ نشین" ; -- from DictUrd
lin companionable_A = mkA "قابل دوستی" ; -- from DictUrd
lin companionship_N = mkN "رفاقت" ; -- from DictUrd
lin company_N = mkN "انجمن" ; -- from DictUrd
lin company_N = mkN "کمپنی" ; -- from DictUrd --changed
lin comparability_N = mkN "موازنہ پذیری" ;
lin comparable_A = mkA "برابر کی ٹکر" ; -- from DictUrd
lin comparative_A = mkA "صفت" ;
@@ -6365,7 +6365,7 @@ lin countess_N = mkN "نواب کی بیوی" ;
lin counting_house_N = mkN "حساب گھر" ;
lin countless_A = mkA "ان گنت" ; -- from DictUrd
lin countrified_A = mkA "دیہاتی طرز" ;
lin country_N = mkN "دار" ; -- from DictUrd
lin country_N = mkN "ملک" ; -- from DictUrd --changed
lin countryman_N = mkN "ہم وطن" ;
lin countryside_N = mkN "دیہاتی علاقہ" ; -- from DictUrd
lin county_N = mkN "برطانیہ کا علاقہ" ;
@@ -7425,7 +7425,7 @@ lin dejection_N = mkN "افسوس" ; -- from DictUrd
lin delaware_PN = mkPN "ایک الگونکی زبان" ;
lin delay_N = mkN "آہستگی" ; -- from DictUrd
lin delay_V = compoundV "دیر" (mkV "ہونا") ; -- from DictUrd
lin delay_V2 = mkV2 (compoundV "دیر" (mkV "لگانا")) ; -- from DictUrd
lin delay_V2 = mkV2 (compoundV "موخر" (mkV "کرنا")) "کو"; -- from DictUrd --changed
lin delay_VS = mkVS (mkV "دیر") ;
lin delectable_A = mkA "خوشگوار" ; -- from DictUrd
lin delectation_N = mkN "تفریح" ;
@@ -8491,7 +8491,7 @@ lin distribute_V2 = mkV2 (mkV "بانٹنا") ; -- from DictUrd
lin distribution_N = mkN "بانٹ" ; -- from DictUrd
lin distributive_A = mkA "تقسیم کے متعلق" ;
lin distributor_N = mkN "قاسم" ;
lin district_N = mkN "علاقہ" ; -- from DictUrd
lin district_N = mkN "ڈسٹرکٹ" ; -- from DictUrd --cahnged
lin distrust_N = mkN "بد گمانی" ; -- from DictUrd
lin distrust_V2 = mkV2 (compoundV "بھروسا نہ" (mkV "کرنا")) ; -- from DictUrd
lin distrustful_A = mkA "بد گمان" ; -- from DictUrd
@@ -9243,7 +9243,7 @@ lin efflorescence_N = mkN "پھول کا کھلنا" ; -- from DictUrd
lin efflorescent_A = mkA "پھولوں لدا" ;
lin effluent_N = mkN "رواں" ;
lin efflux_N = mkN "بہاؤ" ; -- from DictUrd
lin effort_N = mkN "بھاگ دوڑ" ; -- from DictUrd
lin effort_N = mkN "کوشش" ; -- from DictUrd --changed
lin effortless_A = mkA "آسان" ; -- from DictUrd
lin effrontery_N = mkN "بے غیرتی" ; -- from DictUrd
lin effulgence_N = mkN "درخشائی" ;
@@ -10839,6 +10839,7 @@ lin find_N = mkN "معلوم کرنا" ;
lin find_V = mkV "ملنا" ; -- from DictUrd
lin find_V2 = mkV2 (mkV "ڈھونڈنا") ; -- from DictUrd
-- lin find_V2V = mkV2 (compoundV "معلوم" (mkV "کرنا")) ;
lin find_V2A = mkV2 (mkV "پانا") ;
lin find_VS = mkVS (compoundV "معلوم" (mkV "کرنا")) ;
lin finder_N = mkN "یابندہ" ; -- from DictUrd
lin finding_N = mkN "دريافت" ;
@@ -12307,7 +12308,7 @@ lin gong_V2 = mkV2 (mkV "گھنٹا") ;
lin gonorrhea_N = mkN "سوزاک" ;
lin gonorrhoea_N = mkN "جریان" ; -- from DictUrd
lin goo_N = mkN "جذباتیت" ; -- from DictUrd
lin good_A = mkA "بھلا" ; -- from DictUrd
lin good_A = mkA "اچھا" ; -- from DictUrd --changed
lin good_N = mkN "عمدہ" ;
lin good_fellowship_N = mkN "دوستی" ;
lin good_for_nothing_A = mkA "بے شغل" ;
@@ -13732,7 +13733,7 @@ lin horridness_N = mkN "وحشت انگیزی" ;
lin horrific_A = mkA "ڈراؤنا" ; -- from DictUrd
lin horrify_V2 = mkV2 (mkV "ڈرانا") ; -- from DictUrd
lin horror_N = mkN "فساد" ; -- from DictUrd
lin horse_N = mkN "گوڑا" ; -- from DictUrd --changed
lin horse_N = mkN "گھوڑا" ; -- from DictUrd --changed
lin horse_chestnut_N = mkN "شاہ بلوط بندی" ;
lin horse_laugh_N = mkN "بدتمیزی کی ہنسی" ;
lin horse_sense_N = mkN "عملی سمجھ بوجھ" ;
@@ -13761,7 +13762,7 @@ lin hosier_N = mkN "موزے بننے والا" ;
lin hosiery_N = mkN "موزہ بنیان وغیرہ" ;
lin hosp_PN = mkPN "مہمان نواز" ;
lin hospitable_A = mkA "مہمان نواز" ; -- from DictUrd
lin hospital_N = mkN "دوا خانہ" ; -- from DictUrd
lin hospital_N = mkN "ہسپتال" ; -- from DictUrd --changed
lin hospitality_N = mkN "آؤ بھگت" ; -- from DictUrd
lin hospitalization_N = mkN "شفاخانہ باشی" ;
lin hospitalize_V2 = mkV2 (compoundV "ہسپتال میں تیمارداری کے لیے داخل" (mkV "کرنا")) ;
@@ -16035,10 +16036,10 @@ lin knotty_A = mkA "گرہ دار" ;
lin knout_N = mkN "درہ" ; -- from DictUrd
lin know_N = mkN "آگاہ ہونا" ;
lin know_V = compoundV "علم" (mkV "ہونا") ; -- from DictUrd
lin know_V2 = mkV2 (compoundV "آگاہ" (mkV "ہونا")) ; -- from DictUrd
lin know_V2 = mkV2 (mkV "جاننا") "کو"; -- from DictUrd
-- lin know_V2V = mkV2 (compoundV "آگاہ" (mkV "ہونا")) ;
lin know_VS = mkVS (compoundV "آگاہ" (mkV "ہونا")) ;
lin know_VQ = mkVQ (compoundV "آگاہ" (mkV "ہونا")) ;
lin know_VS = mkVS (mkV "جاننا") ; --changed
lin know_VQ = mkVQ (mkV "جاننا") ; --changed
lin know_how_N = mkN "دستگاہ" ;
lin knowing_A = mkA "آگاہ" ; -- from DictUrd
lin knowledge_N = mkN "آگہی" ; -- from DictUrd
@@ -16997,9 +16998,9 @@ lin loneliness_N = mkN "اکیلا پن" ; -- from DictUrd
lin lonely_A = mkA "اکیلا" ; -- from DictUrd
lin lonesome_A = mkA "تنہا" ;
lin long_A = mkA "دراز" ; -- from DictUrd
lin long_Adv = mkAdv "خواہش کرنا" ;
lin long_N = mkN "خواہش کرنا" ;
lin long_V = compoundV "خواہش" (mkV "کرنا") ;
lin long_Adv = mkAdv "لمبا" ; --changed
lin long_N = mkN "لمبا" ; --changed
lin long_V = mkV "لمبا" ; --changed
lin long_distance_A = mkA "دور دراز سے متعلق" ;
lin long_headed_A = mkA "دور اندیش" ;
lin long_lived_A = mkA "لمبی عمر کا" ;
@@ -17436,7 +17437,7 @@ lin mammal_N = mkN "پستان دار جانور" ; -- from DictUrd
lin mammon_N = mkN "دولت مندی" ; -- from DictUrd
lin mammoth_N = mkN "ناپید ہاتھی کی ذات" ; -- from DictUrd
lin mammy_N = mkN "امی" ;
lin man_N = mkN "آدمی" ; -- from DictUrd
lin man_N = mkN "آدمی" "آدمی" "آدمی" "آدمی" "آدمی" "آدمیو" Masc; -- from DictUrd --changed
lin man_V2 = mkV2 (mkV "مرد") ;
lin man_at_arms_N = mkN "سپاہی" ;
lin man_eater_N = mkN "آدم خور حیوان" ;
@@ -17709,7 +17710,7 @@ lin mat_N = mkN "بوریا" ; -- from DictUrd
lin mat_V = mkV "چٹائی" ;
lin mat_V2 = mkV2 (mkV "چٹائی") ;
lin matador_N = mkN "ثور افگن" ;
lin match_N = mkN "میچ" ; -- from DictUrd
lin match_N = mkN "میچ" "میچ" "میچ" "میچ" "میچ" "میچو" Masc; -- from DictUrd
lin match_V = mkV "مقابلہ" ;
lin match_V2 = mkV2 (compoundV "مناسب" (mkV "ہونا")) ; -- from DictUrd
lin match_point_N = mkN "میچ پوائنٹ" ;
@@ -18581,7 +18582,7 @@ lin monday_N = mkN "پیر" ;
lin monday_PN = mkPN "پیر" ;
lin monetary_A = mkA "مالیاتی" ; -- from DictUrd
lin monetize_V2 = mkV2 (compoundV "سکہ" (mkV "بنانا")) ;
lin money_N = mkN "پیسے" ; -- from DictUrd --changed
lin money_N = mkN "پیسہ" ; -- from DictUrd --changed
lin money_order_N = mkN "منی آرڈر" ;
lin moneychanger_N = mkN "خردیا" ; -- from DictUrd
lin moneyed_A = mkA "امیر" ; -- from DictUrd
@@ -19285,7 +19286,7 @@ lin nigger_N = mkN "حبشی" ;
lin niggle_V = compoundV "بال" (mkV "کی کھال نکالنا") ; -- from DictUrd
lin niggling_A = mkA "پست" ;
lin nigh_Adv = mkAdv "قریب" ; -- from DictUrd
lin night_N = mkN "لیل" ; -- from DictUrd
lin night_N = mkN "رات" Fem; -- from DictUrd
lin nightfall_N = mkN "آغاز شب" ; -- from DictUrd
lin nightingale_N = mkN "عندلیب" ; -- from DictUrd
lin nightmare_N = mkN "ڈراؤنا خواب" ; -- from DictUrd
@@ -21198,9 +21199,9 @@ lin phlox_N = mkN "گل شعلہ" ;
lin phobia_N = mkN "خوف کا مرض" ;
lin phoenix_N = mkN "ہما" ; -- from DictUrd
lin phoenix_PN = mkPN "ایک فرضی پرندہ" ;
lin phone_N = mkN "سادہ آواز" ;
lin phone_V = compoundV "سادہ" (mkV "آواز") ;
lin phone_V2 = mkV2 (compoundV "سادہ" (mkV "آواز")) ;
lin phone_N = mkN "فون" ; --changed
lin phone_V = compoundV "فون" (mkV "کرنا") ; --changed
lin phone_V2 = mkV2 (compoundV "فون" (mkV "کرنا")) ; --changed
lin phoneme_N = mkN "صوتيہ" ;
lin phonemic_A = mkA "صوتی اکائيوں کے متعلق" ;
lin phonetic_A = mkA "صوتی" ; -- from DictUrd
@@ -22141,7 +22142,7 @@ lin prawn_N = mkN "جھینگا" ; -- from DictUrd
lin prawn_V = mkV "جھینگا" ;
lin pray_V = compoundV "عبادت" (mkV "کرنا") ;
lin pray_V2 = mkV2 (mkV "مانگنا") ; -- from DictUrd
lin prayer_N = mkN "دعا" ; -- from DictUrd
lin prayer_N = mkN "نماز" ; -- from DictUrd
lin prayer_book_N = mkN "کتاب دعا" ;
lin prayer_meeting_N = mkN "با جماعت نماز" ;
lin pre_eminence_N = mkN "فضلیت" ;
@@ -23555,9 +23556,9 @@ lin raze_V2 = mkV2 (mkV "ڈھانا") ; -- from DictUrd
lin razor_N = mkN "استرا" ;
lin razor_V2 = mkV2 (mkV "استرا") ;
lin re_N = mkN "پہنچنا" ;
lin reach_N = mkN "دخل" ; -- from DictUrd
lin reach_V = mkV "لگنا" ; -- from DictUrd
lin reach_V2 = mkV2 (mkV "لگانا") ; -- from DictUrd
lin reach_N = mkN "پہنچ" ; -- from DictUrd --changed
lin reach_V = mkV "پہنچنا" ; -- from DictUrd --changed
lin reach_V2 = mkV2 (mkV "پہنچنا") ; -- from DictUrd --changed
--lin reach_V2V = mkV2 (mkV "پہنچنا") ;
lin reach_VA = mkV "پہنچنا" ;
lin react_V = compoundV "خلاف اثر" (mkV "کرنا") ;
@@ -23570,7 +23571,7 @@ lin read_VS = mkVS (mkV "پڑھنا") ;
lin readable_A = mkA "دلچسپ کتاب" ;
lin reader_N = mkN "پڑھنے والا" ; -- from DictUrd
lin readily_Adv = mkAdv "فوراً" ; -- from DictUrd
lin reading_N = mkN "خواندگی" ; -- from DictUrd
lin reading_N = mkN "پڑھائی" ; -- from DictUrd --changed
lin reading_PN = mkPN "پڑھائی" ;
lin ready_A = mkA "آمادہ" ; -- from DictUrd
lin ready_N = mkN "تیار" ;
@@ -24710,7 +24711,7 @@ lin sacrament_N = mkN "شعائرہ مقدسہ" ;
lin sacred_A = mkA "دینی" ; -- from DictUrd
lin sacrifice_N = mkN "چڑھاوا" ; -- from DictUrd
lin sacrifice_V = mkV "قربانی" ;
lin sacrifice_V2 = mkV2 (compoundV "فدا" (mkV "کرنا")) ; -- from DictUrd
lin sacrifice_V2 = mkV2 (compoundV "قربان" (mkV "کرنا")) ; -- from DictUrd
lin sacrilegious_A = mkA "گناہگار" ; -- from DictUrd
lin sad_A = mkA "آب دیدہ" ; -- from DictUrd
lin sadden_V = compoundV "افسردہ" (mkV "کرنا") ;
@@ -24920,7 +24921,7 @@ lin scheme_V2 = mkV2 (compoundV "منصوبہ" (mkV "بنانا")) ; -- fr
lin schizophrenia_N = mkN "فکر و عمل میں بے تعلقی" ;
lin scholar_N = mkN "عالم" ; -- from DictUrd
lin scholarship_N = mkN "وظیفہ" ;
lin school_N = mkN "درس گاہ" ; -- from DictUrd
lin school_N = mkN "سکول" "سکول" "سکول" "سکولوں" "سکولوں" "سکولو" Masc; -- from DictUrd --changed
lin school_V2 = mkV2 (mkV "مدرسہ") ;
lin schoolboy_N = mkN "طالب علم" ;
lin schooling_N = mkN "تدریس" ; -- from DictUrd
@@ -25095,7 +25096,7 @@ lin secularism_N = mkN "لادینیت" ; -- from DictUrd
lin secularize_V2 = mkV2 (compoundV "دنیوی یا غیر دینیوی" (mkV "بنانا")) ;
lin secure_A = mkA "مامون" ; -- from DictUrd
lin secure_V2 = mkV2 (compoundV "محفوظ" (mkV "کرنا")) ; -- from DictUrd
lin security_N = mkN "عافیت" ; -- from DictUrd
lin security_N = mkN "سیکورٹی" ; -- from DictUrd
lin sedative_A = mkA "مسکن" ;
lin sedative_N = mkN "مسکن" ;
lin sedentary_A = mkA "بیٹھے رہنے کا" ;
@@ -26806,7 +26807,7 @@ lin sugar_V2 = mkV2 (mkV "شکر") ;
lin suggest_V = compoundV "تجویز" (mkV "کرنا") ;
lin suggest_V2 = mkV2 (compoundV "عرض" (mkV "کرنا")) ; -- from DictUrd
lin suggest_VS = mkVS (compoundV "تجویز" (mkV "کرنا")) ;
lin suggestion_N = mkN "رائے" ; -- from DictUrd -- changed
lin suggestion_N = mkN "تجاویز" ; -- from DictUrd -- changed
lin suicidal_A = mkA "خودکشی کے مترادف" ;
lin suicide_N = mkN "خود کشی" ; -- from DictUrd
lin suit_N = mkN "در خواست" ; -- from DictUrd
@@ -28987,7 +28988,7 @@ lin urn_N = mkN "منقش مرتبان" ;
lin us_PN = mkPN "ہمیں" ;
lin usa_PN = mkPN "سلوک" ;
lin usage_N = mkN "عادت" ; -- from DictUrd
lin use_N = mkN "فائدہ" ; -- from DictUrd
lin use_N = mkN "استعمال" ; -- from DictUrd
lin use_V = compoundV "استعمال" (mkV "کرنا") ;
lin use_V2 = mkV2 (compoundV "عادت" (mkV "ڈالنا")) ; -- from DictUrd
-- lin use_V2V = mkV2 (compoundV "استعمال" (mkV "کرنا")) ;
@@ -30035,7 +30036,7 @@ lin
although_Subj = ss "اگرچہ" ;
always_AdV = ss "ہمیشہ" ;
and_Conj = sd2 [] "اور" ** {n = Pl} ;
anyone_NP = MassNP (UseN (ParadigmsUrd.mkN "کوی" "کوی" "کوی" "کوی" "کوی" "کوی" Masc ));
anyone_NP = MassNP (UseN (ParadigmsUrd.mkN "ہر کوئی" "ہر کوئی" "ہر کوئی" "ہر کوئی" "ہر کوئی" "ہر کوئی" Masc ));
because_Subj = ss "كیونكہ" ;
before_Prep = mkPrep ["سے پہلے"] ["سے پہلے"] ;
behind_Prep = mkPrep ["كے پیچھے"] ["كے پیچھے"] ;
@@ -30187,7 +30188,7 @@ lin but_Subj= ss "لیکن";
lin football_N= mkN "فٹبال";
--lin leave_V= mkV "";
lin annual_A= mkA "سالانہ";
lin by_Prep= mkPrep "کے ذرییے" "کے ذرییے";
lin by_Prep= mkPrep "سے" "سے";
--lin go_V= mkV "جانا";
lin about_Prep= mkPrep "کے متعلق" "کے متعلق";
--lin unless_Subj= ss "";
@@ -30209,11 +30210,13 @@ lin savagery_N = mkN "وحشیانہ پن" ;
lin officialMasc_N= mkN "افسر";
lin representativeMasc_N= mkN "نمائیندہ";
lin handcart_N= mkN "صورتحال";
lin unless_Subj= ss "جب تک";
lin unless_Subj= ss "جب تک نہیں";
lin so_Subj= ss "اس لئے";
lin several_Num = {s = "کئی" ; n = Pl} ;
lin few_Num = {s = "چند" ; n = Pl} ;
lin even_AdV = ss "حتی کہ";
lin should_VV = mkV "چاہنا" ** { isAux = True} ; --this need to be fixed
lin must_VV = (mkV "ضرور چاہنا") ** { isAux = True} ; -- this need to be fixed
lin half_Predet = ss "آدھا" ;
lin till_Prep = mkPrep "جب تک" "جب تک" ;
}

View File

@@ -26,24 +26,51 @@ flags coding = utf8 ;
-- for VP conjunction
PassVPSlash vps = vps ;
{-
--{
-- let
-- be = predAux auxBe
-- in {
lincat
VPS = {s : Agr => Str} ;
[VPS] = {s1,s2 : Agr => Str} ;
lin
BaseVPS = twoTable Agr ;
ConsVPS = consrTable Agr comma ;
PredVPS np vpi = {s = np.s ! NPC Dir ++ vpi.s ! np.a} ;
MkVPS t p vp = {
s = \\a =>
let
verb = vp.s ! (VPTense VPPast a) ; -- this needs to be fixed --vp.s ! t.t ! t.a ! p.p ! ODir ! a ;
verbf = verb.fin ++ verb.inf ;
in t.s ++ p.s ++ vp.ad ++ vp.cvp ++ verbf ++ vp.obj.s ++ vp.comp ! a
} ;
ConjVPS = conjunctDistrTable Agr ;
-- ComplVPIVV vv vpi =
-- insertObj (\\a => vpi.s ! vv.typ ! a) (predVV vv) ;
--PassVPSlash vps = vps ;
-- in progress
PassVPSlash vps =
let
aux = predV (mkV "جانا")
in {
-- s = be.s ;
s = vps.s ;
s = table {
VPTense tense agr => {inf = (vps.s ! VPTense VPPast agr).inf ++ (aux.s ! VPTense tense agr).inf ;
fin = (aux.s ! VPTense tense agr).fin};
vform => {inf = (vps.s ! vform).inf ++ (aux.s!vform).inf; fin = (vps.s!vform).inf}
};
obj = vps.obj ;
subj = vps.c2.c ;
inf = vps.inf;
subj = vps.subj ;
inf = (vps.s ! VPTense VPPast (Ag Masc Sg Pers3_Distant)).inf ++ aux.inf; --this is not correct since, in this case the infinitive form will also inflect for agr i.e. khaya jana, khai jani etc
ad = vps.ad;
embComp = vps.embComp;
prog = vps.prog ;
comp = vps.comp ;
cvp = vps.cvp
-- } ;
} ;
--};
-}
}

View File

@@ -1,9 +1,9 @@
--# -path=.:alltenses:../abstract:../english
concrete ParseUrd of ParseEngAbs =
TenseX - [AdN,Adv,SC],
TenseX - [AdN,Adv,SC,PPos,PNeg],
-- TextX - [AdN,Adv,SC],
CatUrd,
NounUrd,
NounUrd - [PPartNP],
AdjectiveUrd,
NumeralUrd,
ConjunctionUrd,
@@ -12,10 +12,13 @@ concrete ParseUrd of ParseEngAbs =
PhraseUrd,
SentenceUrd,
RelativeUrd,
QuestionUrd,
SymbolUrd [PN, Symb, String, CN, Card, NP, MkSymb, SymbPN, CNNumNP],
-- StructuralUrd,
IdiomUrd [NP, VP, Tense, Cl, ProgrVP, ExistNP],
ExtraUrd [NP, Quant, VPSlash, VP, Tense, GenNP, PassVPSlash],
ExtraUrd [NP, Quant, VPSlash, VP, Tense, GenNP, PassVPSlash,Temp,Pol,Conj,VPS,ListVPS,S,Num, CN,
RP, MkVPS, BaseVPS, ConsVPS, ConjVPS, PredVPS, GenRP,VPI, VPIForm, VPIInf, VPIPresPart, ListVPI,
VV, MkVPI, BaseVPI, ConsVPI, ConjVPI, ComplVPIVV,ClSlash, RCl, EmptyRelSlash],
DictUrd2 **
-- UNDictUrd **
open MorphoUrd, ResUrd, ParadigmsUrd,CommonX, CommonHindustani, Prelude in {
@@ -24,17 +27,17 @@ flags
literal=Symb ;
lin
{- myself_NP = regNP "myself" singular ;
yourselfSg_NP = regNP "yourself" singular ;
himself_NP = regNP "himself" singular ;
herself_NP = regNP "herself" singular ;
itself_NP = regNP "itself" singular ;
ourself_NP = regNP "ourself" plural ;
yourselfPl_NP = regNP "yourself" plural ;
themself_NP = regNP "themself" plural ;
-}
myself_NP = {s = \\_ => kwd ; a = Ag Masc Sg Pers1 };
yourselfSg_NP = {s = \\_ => kwd ; a = Ag Masc Sg Pers2_Respect }; --regNP "yourself" singular ;
himself_NP = {s = \\_ => kwd ; a = Ag Masc Sg Pers3_Distant }; --regNP "himself" singular ;
herself_NP = {s = \\_ => kwd ; a = Ag Fem Sg Pers3_Distant }; --regNP "herself" singular ;
itself_NP = {s = \\_ => kwd ; a = Ag Masc Sg Pers3_Near }; --regNP "itself" singular ;
ourself_NP = {s = \\_ => kwd ; a = Ag Masc Pl Pers1 }; --regNP "ourself" plural ;
yourselfPl_NP = {s = \\_ => kwd ; a = Ag Masc Pl Pers2_Respect }; --regNP "yourself" plural ;
themself_NP = {s = \\_ => kwd ; a = Ag Masc Pl Pers3_Distant }; --regNP "themself" plural ;
CompoundCN num noun cn = {
s = \\n,c => num.s ++ cn.s ! n ! c ++ noun.s ! num.n ! Dir;
s = \\n,c => num.s ++ cn.s ! n ! c ++ noun.s ! num.n ! Dir;
g = cn.g
} ;
@@ -44,16 +47,16 @@ lin
} ;
GerundN v = {
s = \\n,c => v.cvp ++ v.s ! Inf ; --the main verb of compound verbs
s = \\n,c => v.cvp ++ v.s ! Inf ; -- v.s ! VF Imperf Pers2_Casual n Masc ++ hwa (Ag Masc n Pers2_Casual) ; --the main verb of compound verbs
g = Masc
} ;
GerundAP v = {
s = \\_,_,_,_ => v.cvp ++ v.s ! Inf --the main verb of compound verbs
s = \\n,g,_,_ => v.cvp ++ v.s ! VF Imperf Pers2_Casual n g ++ hwa (Ag g n Pers2_Casual) ;
} ;
PastPartAP v = {
s = \\_,_,_,_ => v.cvp ++ v.s ! Inf -- the main verb of compound versb needs to be attached here
s = \\n,g,_,_ => v.cvp ++ v.s ! VF Imperf Pers2_Casual n g ; -- the main verb of compound versb needs to be attached here
} ;
-- OrdCompar a = {s = \\c => a.s ! AAdj Compar c } ;
@@ -66,6 +69,32 @@ ComplVV v a p vp = insertTrans (insertVV (infVV v.isAux vp) (predV v) vp.embComp
UseQuantPN q pn = {s = \\c => q.s ! Sg ! pn.g ! Dir ++ pn.s ! Dir ; a = agrP3 pn.g Sg} ;
PredVPosv np vp = mkClause np vp ; --{
{- s = \\t,a,b,o =>
let
verb = vp.s ! t ! a ! b ! o ! np.a ;
compl = vp.s2 ! np.a
in
case o of {
ODir => compl ++ "," ++ np.s ! npNom ++ verb.aux ++ vp.ad ++ verb.fin ++ verb.adv ++ verb.inf ;
OQuest => verb.aux ++ compl ++ "," ++ np.s ! npNom ++ verb.adv ++ vp.ad ++ verb.fin ++ verb.inf
}
} ;
-}
PredVPovs np vp = mkClause np vp ; --{
{- s = \\t,a,b,o =>
let
verb = vp.s ! t ! a ! b ! o ! np.a ;
compl = vp.s2 ! np.a
in
case o of {
ODir => compl ++ verb.aux ++ verb.adv ++ vp.ad ++ verb.fin ++ verb.inf ++ np.s ! npNom ;
OQuest => verb.aux ++ compl ++ verb.adv ++ vp.ad ++ verb.fin ++ verb.inf ++ np.s ! npNom
}
} ;
-}
{-
SlashV2V v p vp = insertObjc (\\a => p.s ++ case p.p of {CPos => ""; _ => "not"} ++
v.c3 ++
@@ -99,8 +128,9 @@ CompVP ant p vp = {s = \\a => ant.s ++ p.s ++
CompS s = {s = \\_ => "kh" ++ s.s} ;
-- CompVP vp = {s = \\a => infVP VVInf vp a} ;
--lin
-- PPos = {s = [] ; p = CPos} ;
-- PNeg = {s = [] ; p = CNeg True} ; -- contracted: don't
lin
PPos = {s = [] ; p = Pos} ;
PNeg = {s = [] ; p = Neg} ; -- contracted: don't
UncNeg = {s = [] ; p = Neg} ;
}

View File

@@ -26,24 +26,51 @@ flags coding = utf8 ;
-- for VP conjunction
PassVPSlash vps = vps ;
{-
--{
-- let
-- be = predAux auxBe
-- in {
lincat
VPS = {s : Agr => Str} ;
[VPS] = {s1,s2 : Agr => Str} ;
lin
BaseVPS = twoTable Agr ;
ConsVPS = consrTable Agr comma ;
PredVPS np vpi = {s = np.s ! NPC Dir ++ vpi.s ! np.a} ;
MkVPS t p vp = {
s = \\a =>
let
verb = vp.s ! (VPTense VPPast a) ; -- this needs to be fixed --vp.s ! t.t ! t.a ! p.p ! ODir ! a ;
verbf = verb.fin ++ verb.inf ;
in t.s ++ p.s ++ vp.ad ++ vp.cvp ++ verbf ++ vp.obj.s ++ vp.comp ! a
} ;
ConjVPS = conjunctDistrTable Agr ;
-- ComplVPIVV vv vpi =
-- insertObj (\\a => vpi.s ! vv.typ ! a) (predVV vv) ;
--PassVPSlash vps = vps ;
-- in progress
PassVPSlash vps =
let
aux = predV (mkV "jana")
in {
-- s = be.s ;
s = vps.s ;
s = table {
VPTense tense agr => {inf = (vps.s ! VPTense VPPast agr).inf ++ (aux.s ! VPTense tense agr).inf ;
fin = (aux.s ! VPTense tense agr).fin};
vform => {inf = (vps.s ! vform).inf ++ (aux.s!vform).inf; fin = (vps.s!vform).inf}
};
obj = vps.obj ;
subj = vps.c2.c ;
inf = vps.inf;
subj = vps.subj ;
inf = (vps.s ! VPTense VPPast (Ag Masc Sg Pers3_Distant)).inf ++ aux.inf; --this is not correct since, in this case the infinitive form will also inflect for agr i.e. khaya jana, khai jani etc
ad = vps.ad;
embComp = vps.embComp;
prog = vps.prog ;
comp = vps.comp ;
cvp = vps.cvp
-- } ;
} ;
--};
-}
}