53 lines
1.9 KiB
Plaintext
53 lines
1.9 KiB
Plaintext
concrete CatMkd of Cat = CommonX - [Temp,Tense] ** open ParamX, ResMkd, Prelude in {
|
|
|
|
lincat
|
|
Temp = {s : Str ; t : ResMkd.Tense ; a : Anteriority} ;
|
|
Tense = {s : Str ; t : ResMkd.Tense} ;
|
|
|
|
lincat N = Noun ;
|
|
lincat N2 = Noun ** {c2 : Compl} ;
|
|
lincat N3 = Noun ** {c2,c3 : Compl} ;
|
|
lincat CN = {s: Species => Number => Str; count_form: Str; vocative: Number => Str; g: Gender} ;
|
|
lincat V, VA, VV, VS, VQ = Verb ;
|
|
lincat V2, V2S, V2Q = Verb ** {c2 : Compl} ;
|
|
lincat V3, V2A, V2V = Verb ** {c2,c3 : Compl} ;
|
|
lincat A = Adj ;
|
|
lincat A2 = Adj ** {c2 : Compl} ;
|
|
lincat Pron = Pronoun ;
|
|
lincat Prep = Compl ;
|
|
lincat Decimal = {s : Str; n : Number; hasDot : Bool} ;
|
|
lincat Digits = {s : Str; n : Number; tail : DTail} ;
|
|
|
|
linref N,N2,N3 = \n -> n.s ! Indef ! Sg ;
|
|
linref V, VA, VV, VS, VQ, V2, V2S, V2Q, V3, V2A, V2V =
|
|
\v -> v.present ! Imperfective ! Sg ! P3 ++
|
|
case v.vtype of {
|
|
VNormal => [] ;
|
|
VMedial Acc => "се" ;
|
|
VMedial Dat => "си"
|
|
} ;
|
|
linref A, A2 = \a -> a.s ! Indef ! GSg Masc ;
|
|
|
|
lincat AP = {s : Species => GenNum => Str; isPre : Bool} ;
|
|
lincat NP = {s : Role => Str; vocative: Str; a : Agr} ;
|
|
lincat Num = {s : Str; n : NNumber} ;
|
|
lincat Quant = {s : GenNum => Str; sp : Species} ;
|
|
lincat Det, DAP = {s : Gender => Str; n : NNumber; sp : Species} ;
|
|
|
|
lincat VP = Verb ** {compl : Agr => Str} ;
|
|
lincat VPSlash = Verb ** {compl : Agr => Str; c2 : Compl} ;
|
|
lincat S,QS = {s : Str} ;
|
|
lincat RS = {s : GenNum => Str} ;
|
|
lincat Cl = {s : Order => ResMkd.Tense => Anteriority => Polarity => Str} ;
|
|
lincat QCl = {s : ResMkd.Tense => Anteriority => Polarity => Str} ;
|
|
lincat RCl = {s : GenNum => ResMkd.Tense => Anteriority => Polarity => Str} ;
|
|
lincat RP = {s : GenNum => Str} ;
|
|
lincat IP = {s : Str; g : GenNum} ;
|
|
lincat IQuant = {s : GenNum => Str} ;
|
|
lincat IDet = {s : Gender => Str; n : Number} ;
|
|
lincat Subj = {s : Str} ;
|
|
lincat Imp = {s : Polarity => GenNum => Str} ;
|
|
lincat Comp = {s : GenNum => Str} ;
|
|
|
|
}
|