forked from GitHub/gf-rgl
implement DetDAP and AdjDAP
This commit is contained in:
@@ -54,7 +54,7 @@ concrete CatBul of Cat = CommonX - [IAdv,CAdv,AdV,SC] ** open ResBul, Prelude, P
|
|||||||
CN = {s : NForm => Str; g : AGender} ;
|
CN = {s : NForm => Str; g : AGender} ;
|
||||||
NP = {s : Role => Str; a : Agr; p : Polarity} ;
|
NP = {s : Role => Str; a : Agr; p : Polarity} ;
|
||||||
Pron = {s : Role => Str; clit : Case => Str; gen : AForm => Str; a : Agr} ;
|
Pron = {s : Role => Str; clit : Case => Str; gen : AForm => Str; a : Agr} ;
|
||||||
Det = {s : Bool => AGender => Role => Str; nn : NNumber; spec : Species; p : Polarity} ;
|
Det,DAP = {s : Bool => AGender => Role => Str; nn : NNumber; spec : Species; p : Polarity} ;
|
||||||
Predet = {s : GenNum => Str} ;
|
Predet = {s : GenNum => Str} ;
|
||||||
Ord = {s : AForm => Str} ;
|
Ord = {s : AForm => Str} ;
|
||||||
Num = {s : CardForm => Str; nn : NNumber; nonEmpty : Bool} ;
|
Num = {s : CardForm => Str; nn : NNumber; nonEmpty : Bool} ;
|
||||||
|
|||||||
@@ -219,4 +219,25 @@ concrete NounBul of Noun = CatBul ** open ResBul, Prelude in {
|
|||||||
a = np.a ;
|
a = np.a ;
|
||||||
p = np.p
|
p = np.p
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
AdjDAP dap ap = {s = \\sp,g,role => let g' = case g of {
|
||||||
|
AMasc _ => Masc ;
|
||||||
|
AFem => Fem ;
|
||||||
|
ANeut => Neut
|
||||||
|
} ;
|
||||||
|
aform = case <numnnum dap.nn,dap.spec,role> of {
|
||||||
|
<Sg,Def,RSubj> => ASgMascDefNom ;
|
||||||
|
<Sg,_ ,_ > => ASg g' dap.spec ;
|
||||||
|
<Pl,_ ,_ > => APl dap.spec
|
||||||
|
} ;
|
||||||
|
in dap.s ! True ! g ! role ++ ap.s ! aform ! P3 ;
|
||||||
|
nn = dap.nn;
|
||||||
|
spec = dap.spec;
|
||||||
|
p = dap.p
|
||||||
|
} ;
|
||||||
|
DetDAP det = {s = \\sp,g,role => det.s ! sp ! g ! role;
|
||||||
|
nn = det.nn;
|
||||||
|
spec = det.spec;
|
||||||
|
p = det.p
|
||||||
|
} ;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user