refinements-Pnb-2011-04-30

This commit is contained in:
virk.shafqat
2011-04-30 18:11:48 +00:00
parent 72b63e34bd
commit 458675a8e8
26 changed files with 229 additions and 120 deletions

View File

@@ -6,10 +6,13 @@ concrete RelativePnb of Relative = CatPnb ** open ResPnb in {
lin
RelCl cl = {
s = \\t,p,o,agr => case <t,giveNumber agr> of {
<VPImpPast,Sg> => "جس" ++ cl.s ! t ! p ! o ;
<VPImpPast,Pl> => "جن" ++ cl.s ! t ! p ! o ;
<_,_> => "جو" ++ cl.s ! t ! p ! o
s = \\t,p,o,agr => case <t,giveNumber agr,giveGender agr> of {
<VPImpPast,Sg,_> => "جنے" ++ cl.s ! t ! p ! o ;
<VPImpPast,Pl,_> => "جناں" ++ cl.s ! t ! p ! o ;
<_,Sg,Masc> => "جعڑا" ++ cl.s ! t ! p ! o ;
<_,Sg,Fem> => "جعڑی" ++ cl.s ! t ! p ! o ;
<_,Pl,Masc> => "جعڑے" ++ cl.s ! t ! p ! o ;
<_,Pl,Fem> => "جعڑیاں" ++ cl.s ! t ! p ! o
};
c = Dir
} ;
@@ -22,7 +25,7 @@ concrete RelativePnb of Relative = CatPnb ** open ResPnb in {
RNoAg => ag ;
RAg a => a
} ;
cl = mkSClause (rp.s ! (giveNumber agr) ! Dir) agr vp;
cl = mkSClause (rp.s ! (giveNumber agr) ! (giveGender agr) ! Dir) agr vp;
-- cl = case t of {
-- VPImpPast => mkSClause (rp.s ! (giveNumber agr) ! Obl) agr vp;
@@ -39,7 +42,7 @@ concrete RelativePnb of Relative = CatPnb ** open ResPnb in {
---- "وع ارع لooكiنگ ات").
--
RelSlash rp slash = {
s = \\t,p,o,agr => rp.s ! (giveNumber agr) ! Dir ++ slash.c2.s ++ slash.s ! t ! p ! o ;--case t of {
s = \\t,p,o,agr => rp.s ! (giveNumber agr) ! (giveGender agr) ! Obl ++ slash.c2.s ++ slash.s ! t ! p ! o ;--case t of {
-- VPImpPast => rp.s ! (giveNumber agr) Obl ++ slash.c2.s ++ slash.s ! t ! p ! o ;
-- _ => rp.s ! (giveNumber agr) Dir ++ slash.c2.s ++ slash.s ! t ! p ! o
-- };
@@ -47,25 +50,42 @@ concrete RelativePnb of Relative = CatPnb ** open ResPnb in {
} ;
FunRP p np rp = {
s = \\n,c => rp.s ! n ! c ++ np.s ! NPC c ++ p.s ;
s = \\n,g,c => rp.s ! n ! g ! c ++ np.s ! NPC c ++ p.s ;
a = RAg np.a
} ;
IdRP = {
s = table {
Sg => table {
Masc => table {
ResPnb.Dir => "جعڑا" ;
ResPnb.Obl => "جعڑے" ;
ResPnb.Voc => "جعڑے" ;
ResPnb.Abl => "جعڑے"
ResPnb.Dir => "جیڑا" ;
ResPnb.Obl => "جن" ;
ResPnb.Voc => "جیڑے" ;
ResPnb.Abl => "جیڑے"
};
Pl => table {
ResPnb.Dir => "جعڑے" ;
ResPnb.Obl => "جعڑے" ;
ResPnb.Voc => "جعڑے" ;
ResPnb.Abl => "جعڑے"
Fem => table {
ResPnb.Dir => "جیڑی" ;
ResPnb.Obl => "جن" ;
ResPnb.Voc => "جیڑی" ;
ResPnb.Abl => "جیڑی"
}
};
Pl => table {
Masc => table {
ResPnb.Dir => "جیڑے" ;
ResPnb.Obl => "جیڑے" ;
ResPnb.Voc => "جیڑے" ;
ResPnb.Abl => "جیڑے"
};
Fem => table {
ResPnb.Dir => "جیڑی" ;
ResPnb.Obl => "جیڑی" ;
ResPnb.Voc => "جیڑی" ;
ResPnb.Abl => "جیڑی"
}
}
};
a = RNoAg
} ;