forked from GitHub/gf-rgl
change NP to contain GenNum instead of Number and Gender
This commit is contained in:
@@ -24,7 +24,7 @@ linref V, VA, VV, VS, VQ, V2, V2S, V2Q, V3, V2A, V2V =
|
|||||||
linref A, A2 = \a -> a.s ! Indef ! GSg Masc ;
|
linref A, A2 = \a -> a.s ! Indef ! GSg Masc ;
|
||||||
|
|
||||||
lincat AP = {s : Species => GenNum => Str; isPre : Bool} ;
|
lincat AP = {s : Species => GenNum => Str; isPre : Bool} ;
|
||||||
lincat NP = {s : Str; vocative: Str; n : Number; p : Person; g : Gender} ;
|
lincat NP = {s : Str; vocative: Str; g : GenNum; p : Person} ;
|
||||||
lincat Num = {s : Str; n : Number} ;
|
lincat Num = {s : Str; n : Number} ;
|
||||||
lincat Quant = {s : Str; sp : Species} ;
|
lincat Quant = {s : Str; sp : Species} ;
|
||||||
lincat Det = {s : Str; n : Number; sp : Species} ;
|
lincat Det = {s : Str; n : Number; sp : Species} ;
|
||||||
|
|||||||
@@ -31,9 +31,11 @@ concrete NounMkd of Noun = CatMkd ** open Prelude,ResMkd in {
|
|||||||
lin DetCN det cn = {
|
lin DetCN det cn = {
|
||||||
s = det.s ++ cn.s ! det.sp ! det.n;
|
s = det.s ++ cn.s ! det.sp ! det.n;
|
||||||
vocative = det.s ++ cn.vocative ! det.n;
|
vocative = det.s ++ cn.vocative ! det.n;
|
||||||
n = det.n;
|
g = case det.n of {
|
||||||
|
Sg => GSg cn.g;
|
||||||
|
Pl => GPl
|
||||||
|
} ;
|
||||||
p = P3;
|
p = P3;
|
||||||
g = cn.g
|
|
||||||
} ;
|
} ;
|
||||||
lin DetQuant det num = {s = det.s ++ num.s; n = num.n;
|
lin DetQuant det num = {s = det.s ++ num.s; n = num.n;
|
||||||
sp = det.sp} ;
|
sp = det.sp} ;
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
concrete SentenceMkd of Sentence = CatMkd ** open Prelude,ResMkd in {
|
concrete SentenceMkd of Sentence = CatMkd ** open Prelude,ResMkd in {
|
||||||
|
|
||||||
lin PredVP np vp = {present = \\a => np.s ++ vp.present ! a ! np.n ! np.p ;
|
lin PredVP np vp =
|
||||||
aorist = np.s ++ vp.aorist ! np.n ! np.p ;
|
let n = case np.g of {
|
||||||
participle = {aorist = \\a => np.s ++ vp.participle.aorist ! a !
|
GSg _ => Sg ;
|
||||||
case np.n of {
|
GPl => Pl
|
||||||
Sg => GSg np.g;
|
}
|
||||||
Pl => GPl
|
in {present = \\a => np.s ++ vp.present ! a ! n ! np.p ;
|
||||||
};
|
aorist = np.s ++ vp.aorist ! n ! np.p ;
|
||||||
perfect = \\a => np.s ++ vp.participle.perfect ! a}} ;
|
participle = {aorist = \\a => np.s ++ vp.participle.aorist ! a ! np.g;
|
||||||
|
perfect = \\a => np.s ++ vp.participle.perfect ! a}} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user