forked from GitHub/gf-rgl
implement UsePron
This commit is contained in:
@@ -1,3 +1,3 @@
|
||||
concrete AdverbMkd of Adverb = CatMkd ** open Prelude,ResMkd in {
|
||||
lin PrepNP p np = {s = p.s ++ np.s} ;
|
||||
lin PrepNP p np = {s = p.s ++ np.s ! RPrep} ;
|
||||
}
|
||||
|
||||
@@ -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 ;
|
||||
|
||||
lincat AP = {s : Species => GenNum => Str; isPre : Bool} ;
|
||||
lincat NP = {s : Str; vocative: Str; g : GenNum; p : Person} ;
|
||||
lincat NP = {s : Role => Str; vocative: Str; g : GenNum; p : Person} ;
|
||||
lincat Num = {s : Str; n : Number} ;
|
||||
lincat Quant = {s : Str; sp : Species} ;
|
||||
lincat Det = {s : Str; n : Number; sp : Species} ;
|
||||
|
||||
@@ -29,7 +29,7 @@ concrete NounMkd of Noun = CatMkd ** open Prelude,ResMkd in {
|
||||
} ;
|
||||
lin DefArt = {s = []; sp = Def Unspecified} ;
|
||||
lin DetCN det cn = {
|
||||
s = det.s ++ cn.s ! det.sp ! det.n;
|
||||
s = \\r => det.s ++ cn.s ! det.sp ! det.n;
|
||||
vocative = det.s ++ cn.vocative ! det.n;
|
||||
g = case det.n of {
|
||||
Sg => GSg cn.g;
|
||||
@@ -43,4 +43,5 @@ concrete NounMkd of Noun = CatMkd ** open Prelude,ResMkd in {
|
||||
lin NumPl = {s = []; n = Pl} ;
|
||||
lin NumSg = {s = []; n = Sg} ;
|
||||
lin UseN s = s ;
|
||||
lin UsePron p = p ** {vocative=p.s ! RSubj} ;
|
||||
}
|
||||
|
||||
@@ -5,9 +5,9 @@ concrete SentenceMkd of Sentence = CatMkd ** open Prelude,ResMkd in {
|
||||
GSg _ => Sg ;
|
||||
GPl => Pl
|
||||
}
|
||||
in {present = \\a => np.s ++ vp.present ! a ! n ! np.p ;
|
||||
aorist = np.s ++ vp.aorist ! n ! np.p ;
|
||||
participle = {aorist = \\a => np.s ++ vp.participle.aorist ! a ! np.g;
|
||||
perfect = \\a => np.s ++ vp.participle.perfect ! a}} ;
|
||||
in {present = \\a => np.s ! RSubj ++ vp.present ! a ! n ! np.p ;
|
||||
aorist = np.s ! RSubj ++ vp.aorist ! n ! np.p ;
|
||||
participle = {aorist = \\a => np.s ! RSubj ++ vp.participle.aorist ! a ! np.g;
|
||||
perfect = \\a => np.s ! RSubj ++ vp.participle.perfect ! a}} ;
|
||||
|
||||
}
|
||||
|
||||
@@ -2,12 +2,12 @@ concrete VerbMkd of Verb = CatMkd ** open Prelude,ResMkd in {
|
||||
|
||||
lin ComplSlash vps np = {present = \\a,n,p => vps.present ! a ! n
|
||||
! p
|
||||
++ np.s;
|
||||
aorist = \\n,p => vps.aorist ! n ! p ++ np.s;
|
||||
imperfect = \\a,n,p => vps.imperfect ! a ! n ! p ++ np.s;
|
||||
imperative = \\a,n => vps.imperative ! a ! n ++ np.s;
|
||||
participle = {aorist = \\a,gn => vps.participle.aorist ! a ! gn ++ np.s;
|
||||
perfect = \\a => vps.participle.perfect ! a ++ np.s}} ;
|
||||
++ np.s ! RObj Acc ;
|
||||
aorist = \\n,p => vps.aorist ! n ! p ++ np.s ! RObj Acc;
|
||||
imperfect = \\a,n,p => vps.imperfect ! a ! n ! p ++ np.s ! RObj Acc;
|
||||
imperative = \\a,n => vps.imperative ! a ! n ++ np.s ! RObj Acc;
|
||||
participle = {aorist = \\a,gn => vps.participle.aorist ! a ! gn ++ np.s ! RObj Acc;
|
||||
perfect = \\a => vps.participle.perfect ! a ++ np.s ! RObj Acc}} ;
|
||||
lin SlashV2a v = v ;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user