forked from GitHub/gf-core
urdu
This commit is contained in:
127
examples/urduhindi/CatUrduHindiAbs.gf
Normal file
127
examples/urduhindi/CatUrduHindiAbs.gf
Normal file
@@ -0,0 +1,127 @@
|
||||
abstract CatUrduHindiAbs = {
|
||||
|
||||
--cat and fun rules for morphology (FM generated)
|
||||
|
||||
cat
|
||||
N;
|
||||
PN;
|
||||
Adj;
|
||||
Adj1;
|
||||
AdjD;
|
||||
Adv;
|
||||
Num;
|
||||
Verb_Aux;
|
||||
Verb;
|
||||
Verb1;
|
||||
Verb2;
|
||||
Verb3;
|
||||
RelPron3;
|
||||
RelPron2;
|
||||
RelPron1;
|
||||
RelPron;
|
||||
IndefPron2;
|
||||
IndefPron1;
|
||||
IndefPron;
|
||||
InterPron3;
|
||||
InterPron2;
|
||||
InterPron1;
|
||||
InterPron;
|
||||
RefPron;
|
||||
PersPron;
|
||||
PossPron;
|
||||
DemPron;
|
||||
Neg;
|
||||
Quest;
|
||||
Conj;
|
||||
Intjunc;
|
||||
PossPostPos;
|
||||
PostP;
|
||||
Part;
|
||||
|
||||
-- Categories for Syntax
|
||||
CN;
|
||||
NP;
|
||||
VP;
|
||||
S;
|
||||
|
||||
|
||||
|
||||
--functions for Syntax
|
||||
|
||||
fun
|
||||
UseN : N -> CN ; --ktab
|
||||
|
||||
UseNPSg : NP -> CN -> NP;
|
||||
UseNPPl : NP -> CN -> NP;
|
||||
|
||||
-- myry ktab(my Book), tyry ktab(your book)
|
||||
DetN_Pers1 : PossPron -> CN -> CN ;
|
||||
DetN_Pers2Casual : PossPron -> CN -> CN ;
|
||||
DetN_Pers2Familiar : PossPron -> CN -> CN ;
|
||||
DetN_Pers2Respect : PossPron -> CN -> CN ;
|
||||
DetN_Pers3Near : PossPron -> CN -> CN ;
|
||||
DetN_Pers3Distant : PossPron -> CN -> CN ;
|
||||
|
||||
DetCN : Num -> CN -> NP ; --ayk ktab(one book), dw ktabyN(two books)
|
||||
|
||||
-- wh ktab(that book), yh ktab(this book), a(i)s ktab, a(o)s ktab
|
||||
DetCN1Sg : DemPron -> CN -> NP ;
|
||||
|
||||
-- wh ktabyN(those books), yh ktabyN(these books), a(i)n ktabwN, a(o)n ktabwN
|
||||
DetCN1Pl : DemPron -> CN -> NP ;
|
||||
-- wh ayk ktab(that one book), yh ayk ktab(this one book)
|
||||
DetCN2 : DemPron -> Num -> CN -> NP ;
|
||||
DetCN3Sg : CN -> NP;
|
||||
DetCN3Pl : CN -> NP;
|
||||
UsePN : PN -> NP ; -- Pakstan
|
||||
-- wh pakstan(that Pakistan), yh pakstan(this Pakistan)
|
||||
UsePN1 : DemPron -> PN -> NP ;
|
||||
|
||||
--Personal Pronouns
|
||||
UsePronSgP1M : PersPron -> NP ; -- myN, mjh
|
||||
UsePronSgP1F : PersPron -> NP ; -- myN, mjh
|
||||
UsePronPlP1M : PersPron -> NP ; -- hm,
|
||||
UsePronPlP1F : PersPron -> NP ;
|
||||
UsePronSgP2CM: PersPron -> NP ;
|
||||
UsePronSgP2CF: PersPron -> NP ;
|
||||
UsePronPlP2CM: PersPron -> NP ;
|
||||
UsePronPlP2CF: PersPron -> NP ;
|
||||
UsePronSgP2FM: PersPron -> NP ;
|
||||
UsePronSgP2FF: PersPron -> NP ;
|
||||
UsePronPlP2FM: PersPron -> NP ;
|
||||
UsePronPlP2FF: PersPron -> NP ;
|
||||
UsePronSgP2RM: PersPron -> NP ;
|
||||
UsePronSgP2RF: PersPron -> NP ;
|
||||
UsePronPlP2RM: PersPron -> NP ;
|
||||
UsePronPlP2RF: PersPron -> NP ;
|
||||
UsePronSgP3NM: PersPron -> NP ;
|
||||
UsePronSgP3NF: PersPron -> NP ;
|
||||
UsePronPlP3NM: PersPron -> NP ;
|
||||
UsePronPlP3NF: PersPron -> NP ;
|
||||
UsePronSgP3DM: PersPron -> NP ;
|
||||
UsePronSgP3DF: PersPron -> NP ;
|
||||
UsePronPlP3DM: PersPron -> NP ;
|
||||
UsePronPlP3DF: PersPron -> NP ;
|
||||
|
||||
|
||||
UseV : Verb_Aux -> VP;
|
||||
UseVVAux : Verb -> Verb_Aux -> VP;
|
||||
|
||||
|
||||
UsePastS: NP -> VP -> S ;
|
||||
UsePresS: NP -> VP -> S ;
|
||||
UseFutS: NP -> VP -> S ;
|
||||
|
||||
UsePronVVAuxPast: NP -> VP -> S; -- a(i)s kw lyna tha
|
||||
UsePronVVAuxPres: NP -> VP -> S; --a(i)s kw kyna hE
|
||||
|
||||
--fixme for hwN gE forms
|
||||
UsePronVVAuxFut: NP -> VP -> S; --a(i)s kw kyna hwga
|
||||
|
||||
UseSPast: NP -> VP -> S;
|
||||
UseSPres: NP -> VP -> S;
|
||||
UseSFut: NP -> VP -> S;
|
||||
|
||||
|
||||
UseS : S -> Conj -> S -> S;
|
||||
} ;
|
||||
116987
examples/urduhindi/LexUrd.gf
Normal file
116987
examples/urduhindi/LexUrd.gf
Normal file
File diff suppressed because it is too large
Load Diff
4168
examples/urduhindi/Lexicon.gf
Normal file
4168
examples/urduhindi/Lexicon.gf
Normal file
File diff suppressed because it is too large
Load Diff
3
examples/urduhindi/README
Normal file
3
examples/urduhindi/README
Normal file
@@ -0,0 +1,3 @@
|
||||
Main File : Urdu.gf
|
||||
|
||||
Please copy this directory to GF/lib/resource1.x/
|
||||
59
examples/urduhindi/ResUrdHin.gf
Normal file
59
examples/urduhindi/ResUrdHin.gf
Normal file
@@ -0,0 +1,59 @@
|
||||
--# -path=.:../abstract:../common:../../prelude
|
||||
resource ResUrdHin = open Prelude, UrduHindiAbs in {
|
||||
flags coding=utf8 ; optimize=all;
|
||||
|
||||
-- param and oper definitions in this file for Morphology
|
||||
|
||||
param Number = Sg | Pl ;
|
||||
param Case = Nom | Obl | Voc ;
|
||||
param Gender = Masc | Fem ;
|
||||
param Person = Pers1 | Pers2_Casual | Pers2_Familiar |
|
||||
Pers2_Respect | Pers3_Near | Pers3_Distant ;
|
||||
param Degree = Posit | Comp | Super ;
|
||||
param ProperNounForm = PNF Case ;
|
||||
param NounForm = NF Number Case ;
|
||||
param DemPronForm = DPF Number Case ;
|
||||
param PersPronForm = PPF Number Person Case ;
|
||||
param RefPronForm = RefPF ;
|
||||
param InterrPronForm = IntPF Number Case ;
|
||||
param InterrPronForm1 = IntPF1 ;
|
||||
param InterrPronForm2 = IntPF2 Number Case Gender ;
|
||||
param InterrPronForm3 = IntPF3 Number Gender ;
|
||||
param IndefPronForm = IPF Case Gender ;
|
||||
param IndefPronForm1 = IPF1 Case ;
|
||||
param IndefPronForm2 = IPF2 ;
|
||||
param RelPronForm = RPF Number Case ;
|
||||
param RelPronForm1 = RPF1 Number Gender ;
|
||||
param RelPronForm2 = RPF2 Case ;
|
||||
param RelPronForm3 = RPF3 ;
|
||||
param NumeralForm = NumeralF;
|
||||
param AdjForm = AdjF Number Case Gender ;
|
||||
param AdjForm1 = AdjF1 ;
|
||||
param AdjDegForm = AdjDegF Degree ;
|
||||
param PossivePostPForm = PossPostPF Number Gender ;
|
||||
param Tense = Subj | Perf | Imperf ;
|
||||
param Tense_Aux = Past | Present | Future | Subjunctive | Perfective | Imperfective;
|
||||
param Verb_AuxForm = VA Tense_Aux Person Number Gender |
|
||||
VA_Root | VA_Inf | VA_Inf_Fem | VA_Inf_Obl;
|
||||
param VerbForm = VF Tense Person Number Gender | Inf | Root | Inf_Obl | Inf_Fem ;
|
||||
param VerbForm1 = VF1 Tense Person Number Gender | Caus1 Tense Person Number Gender |
|
||||
Caus2 Tense Person Number Gender | Inf1 | Caus1_Inf | Caus2_Inf |
|
||||
Inf_Fem1 | Inf_Obl1 | Caus1_Inf_Obl | Caus2_Inf_Obl | Root1 |
|
||||
Caus1_Root | Caus2_Root ;
|
||||
param VerbForm2 = VF2 Tense Person Number Gender | VCaus1 Tense Person Number Gender |
|
||||
Inf2 | VCaus1_Inf | Inf_Obl2 | Inf_Fem2 | VCaus1_Inf_Obl |
|
||||
Root2 | VCaus1_Root ;
|
||||
param VerbForm3 = VF3 Tense Person Number Gender | VCaus2 Tense Person Number Gender |
|
||||
Inf3 | Inf_Fem3 | VCaus2_Inf | Inf_Obl3 | VCaus2_Inf_Obl | Root3 |
|
||||
VCaus2_Root ;
|
||||
param PossPronForm = PossF Number Person Gender ;
|
||||
|
||||
{-
|
||||
oper mkPron2NP : PersPron -> NP =
|
||||
\pp ->
|
||||
{ s = \\c => pp.s ! PPF Sg Pers1 c ; n = Sg ; p = Pers1 ; g = Masc };
|
||||
-}
|
||||
|
||||
|
||||
|
||||
} ;
|
||||
5
examples/urduhindi/Urdu.gf
Normal file
5
examples/urduhindi/Urdu.gf
Normal file
@@ -0,0 +1,5 @@
|
||||
--# -path=.:../abstract:../common:../../prelude
|
||||
concrete Urdu of UrduHindiAbs =
|
||||
UrduHindi,
|
||||
LexUrd
|
||||
** { } ;
|
||||
259
examples/urduhindi/UrduHindi.gf
Normal file
259
examples/urduhindi/UrduHindi.gf
Normal file
@@ -0,0 +1,259 @@
|
||||
--# -path=.:../abstract:../common:../../prelude
|
||||
concrete UrduHindi of UrduHindiAbs = open ResUrdHin, Prelude in {
|
||||
flags coding=utf8 ; optimize=all;
|
||||
|
||||
lincat
|
||||
N = {s : NounForm => Str; h1: Gender} ;
|
||||
PN = {s : ProperNounForm => Str; h1: Gender} ;
|
||||
Adj = {s : AdjForm => Str} ;
|
||||
Adj1 = {s : AdjForm1 => Str} ;
|
||||
AdjD = {s : AdjDegForm => Str} ;
|
||||
Verb_Aux = {s : Verb_AuxForm => Str} ;
|
||||
Verb = {s : VerbForm => Str} ;
|
||||
Verb1 = {s : VerbForm1 => Str} ;
|
||||
Verb2 = {s : VerbForm2 => Str} ;
|
||||
Verb3 = {s : VerbForm3 => Str} ;
|
||||
RelPron3 = {s : RelPronForm3 => Str} ;
|
||||
RelPron2 = {s : RelPronForm2 => Str} ;
|
||||
RelPron1 = {s : RelPronForm1 => Str} ;
|
||||
RelPron = {s : RelPronForm => Str} ;
|
||||
IndefPron2 = {s : IndefPronForm2 => Str} ;
|
||||
IndefPron1 = {s : IndefPronForm1 => Str} ;
|
||||
IndefPron = {s : IndefPronForm => Str} ;
|
||||
InterPron3 = {s : InterrPronForm3 => Str} ;
|
||||
InterPron2 = {s : InterrPronForm2 => Str} ;
|
||||
InterPron1 = {s : InterrPronForm1 => Str} ;
|
||||
InterPron = {s : InterrPronForm => Str} ;
|
||||
RefPron = {s : RefPronForm => Str} ;
|
||||
PersPron = {s : PersPronForm => Str} ;
|
||||
PossPron = {s : PossPronForm => Str} ;
|
||||
DemPron = {s : DemPronForm => Str; h1 : Person} ;
|
||||
PossPostPos = {s : PossivePostPForm => Str} ;
|
||||
Num = { s : NumeralForm => Str ; h1 : Number };
|
||||
Adv, Conj, Neg, Quest, Intjunc, PostP, Part = SS ;
|
||||
|
||||
NP = {s : Case => Str ; n : Number ; p : Person ; g : Gender } ;
|
||||
CN = {s : Number => Case => Str ; g : Gender} ;
|
||||
VP = {s : Tense_Aux => Person => Number => Gender=> Str} ;
|
||||
S = {s: Str};
|
||||
|
||||
lin
|
||||
--VP
|
||||
--UseV : Verb_Aux -> VP;
|
||||
UseV va = { s = \\t,p,n,g => va.s ! VA t p n g };
|
||||
|
||||
|
||||
--UseVVAux : Verb -> Verb_Aux -> VP;
|
||||
UseVVAux v va =
|
||||
{ s = \\t,p,n,g => v.s ! Inf ++ va.s ! VA t p n g
|
||||
};
|
||||
|
||||
|
||||
--UseN x = x;
|
||||
UseN x =
|
||||
{ s = \\n,c => x.s ! NF n c ;
|
||||
g = x.h1
|
||||
} ;
|
||||
|
||||
DetN_Pers1 pron cn =
|
||||
{ s = \\n,c => pron.s ! PossF n Pers1 cn.g ++ cn.s ! n ! c ;
|
||||
g = cn.g
|
||||
} ;
|
||||
DetN_Pers2Casual pron cn =
|
||||
{ s = \\n,c => pron.s ! PossF n Pers2_Casual cn.g ++ cn.s ! n ! c ;
|
||||
g = cn.g
|
||||
} ;
|
||||
DetN_Pers2Familiar pron cn =
|
||||
{ s = \\n,c => pron.s ! PossF n Pers2_Familiar cn.g ++ cn.s ! n ! c ;
|
||||
g = cn.g
|
||||
} ;
|
||||
DetN_Pers2Respect pron cn =
|
||||
{ s = \\n,c => pron.s ! PossF n Pers2_Respect cn.g ++ cn.s ! n ! c ;
|
||||
g = cn.g
|
||||
} ;
|
||||
DetN_Pers3Near pron cn =
|
||||
{ s = \\n,c => pron.s ! PossF n Pers3_Near cn.g ++ cn.s ! n ! c ;
|
||||
g = cn.g
|
||||
} ;
|
||||
DetN_Pers3Distant pron cn =
|
||||
{ s = \\n,c => pron.s ! PossF n Pers3_Distant cn.g ++ cn.s ! n ! c ;
|
||||
g = cn.g
|
||||
} ;
|
||||
|
||||
|
||||
--DetCN3 : CN -> NP;
|
||||
DetCN3Sg cn =
|
||||
{ s = \\c => case c of {
|
||||
Nom => cn.s ! Sg ! Nom ;
|
||||
Obl => cn.s ! Sg ! Obl ;
|
||||
Voc => []
|
||||
};
|
||||
n = Sg;
|
||||
p = Pers3_Near ; --does not mean any thing
|
||||
g = cn.g
|
||||
} ;
|
||||
DetCN3Pl cn =
|
||||
{ s = \\c => case c of {
|
||||
Nom => cn.s ! Pl ! Nom ;
|
||||
Obl => cn.s ! Pl ! Obl ;
|
||||
Voc => []
|
||||
};
|
||||
n = Pl ;
|
||||
p = Pers3_Near ; --does not mean any thing
|
||||
g = cn.g
|
||||
} ;
|
||||
|
||||
DetCN num cn =
|
||||
{ s = \\c => case c of {
|
||||
Nom => num.s ! NumeralF ++ cn.s ! num.h1 ! Nom ;
|
||||
Obl => num.s ! NumeralF ++ cn.s ! num.h1 ! Obl ;
|
||||
Voc => []
|
||||
};
|
||||
n = num.h1;
|
||||
p = Pers3_Near ;
|
||||
g = cn.g
|
||||
} ;
|
||||
|
||||
DetCN1Sg wo cn =
|
||||
{ s = \\c => case c of {
|
||||
Nom => wo.s ! DPF Sg Nom ++ cn.s ! Sg ! Nom ;
|
||||
Obl => [] ;
|
||||
Voc => []
|
||||
|
||||
};
|
||||
n = Sg;
|
||||
p = wo.h1 ;
|
||||
g = cn.g
|
||||
} ;
|
||||
|
||||
DetCN1Pl wo cn =
|
||||
{ s = \\c => case c of {
|
||||
Nom => wo.s ! DPF Pl Nom ++ cn.s ! Pl ! Nom ;
|
||||
Obl => [] ;
|
||||
Voc => []
|
||||
};
|
||||
n = Pl;
|
||||
p = wo.h1 ;
|
||||
g = cn.g
|
||||
} ;
|
||||
-- wh ayk ktab
|
||||
DetCN2 wo num cn =
|
||||
{ s = \\c => case c of {
|
||||
Nom => wo.s ! DPF num.h1 Nom ++ num.s ! NumeralF ++ cn.s ! num.h1 ! Nom ;
|
||||
Obl => wo.s ! DPF num.h1 Obl ++ num.s ! NumeralF ++ cn.s ! num.h1 ! Obl ;
|
||||
Voc => []
|
||||
};
|
||||
n = num.h1;
|
||||
p = wo.h1 ;
|
||||
g = cn.g
|
||||
} ;
|
||||
|
||||
UsePN pn =
|
||||
{ s = \\c => pn.s ! PNF c ;
|
||||
n = Sg ;
|
||||
p = Pers3_Near ; --could be Pers3_distant, does not really matter
|
||||
g = pn.h1
|
||||
} ;
|
||||
UsePN1 wo pn =
|
||||
{ s = \\c => wo.s ! DPF Sg Nom ++ pn.s ! PNF c ;
|
||||
n = Sg ;
|
||||
p = wo.h1 ;
|
||||
g = pn.h1
|
||||
} ;
|
||||
|
||||
|
||||
--UsePron : PersPron -> NP
|
||||
UsePronSgP1M pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers1 c ; n = Sg ; p = Pers1 ; g = Masc };
|
||||
UsePronSgP1F pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers1 c ; n = Sg ; p = Pers1 ; g = Fem };
|
||||
UsePronPlP1M pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers1 c ; n = Pl ; p = Pers1 ; g = Masc };
|
||||
UsePronPlP1F pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers1 c ; n = Pl ; p = Pers1 ; g = Fem };
|
||||
UsePronSgP2CM pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers2_Casual c ; n = Sg ; p = Pers2_Casual ; g = Masc };
|
||||
UsePronSgP2CF pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers2_Casual c ; n = Sg ; p = Pers2_Casual ; g = Fem };
|
||||
UsePronPlP2CM pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers2_Casual c ; n = Pl ; p = Pers2_Casual ; g = Masc };
|
||||
UsePronPlP2CF pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers2_Casual c ; n = Pl ; p = Pers2_Casual ; g = Fem };
|
||||
UsePronSgP2FM pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers2_Familiar c ; n = Sg ; p = Pers2_Familiar ; g = Masc };
|
||||
UsePronSgP2FF pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers2_Familiar c ; n = Sg ; p = Pers2_Familiar ; g = Fem };
|
||||
UsePronPlP2FM pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers2_Familiar c ; n = Pl ; p = Pers2_Familiar ; g = Masc };
|
||||
UsePronPlP2FF pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers2_Familiar c ; n = Pl ; p = Pers2_Familiar ; g = Fem };
|
||||
UsePronSgP2RM pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers2_Respect c ; n = Sg ; p = Pers2_Respect ; g = Masc };
|
||||
UsePronSgP2RF pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers2_Respect c ; n = Sg ; p = Pers2_Respect ; g = Fem };
|
||||
UsePronPlP2RM pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers2_Respect c ; n = Pl ; p = Pers2_Respect ; g = Masc };
|
||||
UsePronPlP2RF pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers2_Respect c ; n = Pl ; p = Pers2_Respect ; g = Fem };
|
||||
UsePronSgP3NM pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers3_Near c ; n = Sg ; p = Pers3_Near ; g = Masc };
|
||||
UsePronSgP3NF pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers3_Near c ; n = Sg ; p = Pers3_Near ; g = Fem };
|
||||
UsePronPlP3NM pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers3_Near c ; n = Pl ; p = Pers3_Near ; g = Masc };
|
||||
UsePronPlP3NF pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers3_Near c ; n = Pl ; p = Pers3_Near ; g = Fem };
|
||||
UsePronSgP3DM pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers3_Distant c ; n = Sg ; p = Pers3_Distant ; g = Masc };
|
||||
UsePronSgP3DF pp =
|
||||
{ s = \\c => pp.s ! PPF Sg Pers3_Distant c ; n = Sg ; p = Pers3_Distant ; g = Fem };
|
||||
UsePronPlP3DM pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers3_Distant c ; n = Pl ; p = Pers3_Distant ; g = Masc };
|
||||
UsePronPlP3DF pp =
|
||||
{ s = \\c => pp.s ! PPF Pl Pers3_Distant c ; n = Pl ; p = Pers3_Distant ; g = Fem };
|
||||
|
||||
|
||||
UsePastS np va = { s = np.s ! Nom ++ va.s ! Past ! np.p ! np.n ! np.g } ;
|
||||
UsePresS np va = { s = np.s ! Nom ++ va.s ! Present ! np.p ! np.n ! np.g } ;
|
||||
UseFutS np va = { s = np.s ! Nom ++ va.s ! Future ! np.p ! np.n ! np.g } ;
|
||||
|
||||
UseNPSg np cn = {
|
||||
s = \\c => np.s ! Obl ++ "کو" ++ cn.s ! Sg ! c ;
|
||||
n = Sg;
|
||||
p = Pers3_Near ;
|
||||
g = cn.g
|
||||
};
|
||||
|
||||
UseNPPl np cn = {
|
||||
s = \\c => np.s ! Obl ++ "کو" ++ cn.s ! Pl ! c ;
|
||||
n = Pl;
|
||||
p = Pers3_Near ;
|
||||
g = cn.g
|
||||
};
|
||||
|
||||
UsePronVVAuxPast np vp = {
|
||||
s = np.s ! Obl ++ "کو" ++ vp.s ! Past ! np.p ! np.n ! np.g
|
||||
};
|
||||
UsePronVVAuxPres np vp = {
|
||||
s = np.s ! Obl ++ "کو" ++ vp.s ! Present ! np.p ! np.n ! np.g
|
||||
};
|
||||
UsePronVVAuxFut np vp = {
|
||||
s = np.s ! Obl ++ "کو" ++ vp.s ! Future ! np.p ! np.n ! np.g
|
||||
};
|
||||
|
||||
UseSPast np vp = {
|
||||
s = np.s ! Nom ++ vp.s ! Past ! np.p ! np.n ! np.g
|
||||
};
|
||||
|
||||
--Present
|
||||
UseSPres np vp = {
|
||||
s = np.s ! Nom ++ vp.s ! Present ! np.p ! np.n ! np.g
|
||||
};
|
||||
|
||||
--Future
|
||||
UseSFut np vp = {
|
||||
s = np.s ! Nom ++ vp.s ! Future ! np.p ! np.n ! np.g
|
||||
};
|
||||
|
||||
UseS s1 conj s2 = {s = s1.s ++ conj.s ++ s2.s};
|
||||
}
|
||||
4
examples/urduhindi/UrduHindiAbs.gf
Normal file
4
examples/urduhindi/UrduHindiAbs.gf
Normal file
@@ -0,0 +1,4 @@
|
||||
abstract UrduHindiAbs =
|
||||
CatUrduHindiAbs,
|
||||
Lexicon
|
||||
**{} ;
|
||||
Reference in New Issue
Block a user