started with tenses

This commit is contained in:
Krasimir Angelov
2026-04-10 19:58:11 +02:00
parent 1c3bb0f6eb
commit b339f7c2fc
12 changed files with 392 additions and 136 deletions
+32 -5
View File
@@ -1,13 +1,40 @@
concrete SentenceMkd of Sentence = CatMkd ** open Prelude,ResMkd in {
lin PredVP np vp =
lin PredVP np vp =
let n = case np.g of {
GSg _ => Sg ;
GPl => Pl
}
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}} ;
in {s = \\t,a,p,o =>
case <t,a> of {
<VPresent,Simul> => np.s ! RSubj ++ neg ++ vp.present ! Imperfective ! n ! np.p ;
<VPresent,Anter> => np.s ! RSubj ++ neg ++ auxBe.present ! n ! np.p ++ vp.participle.imperfect ! Perfective ! np.g ;
<VPastSimple,Simul> => np.s ! RSubj ++ neg ++ vp.aorist ! n ! np.p ;
<VPastSimple,Anter> => np.s ! RSubj ++ neg ++ auxBe.imperfect ! n ! np.p ++ vp.participle.imperfect ! Perfective ! np.g ;
<VPastImperfect,Simul> => np.s ! RSubj ++ neg ++ vp.imperfect ! Perfective ! n ! np.p ;
<VPastImperfect,Anter> => np.s ! RSubj ++ neg ++ auxBe.imperfect ! n ! np.p ++ vp.participle.imperfect ! Perfective ! np.g ;
<VFut, Simul> => np.s ! RSubj ++ fut ++ vp.present ! Perfective ! n ! np.p ;
<VFut, Anter> => np.s ! RSubj ++ fut ++ auxHave.present ! n ! np.p ++ vp.participle.perfect ! Perfective ;
<VCond,Simul> => np.s ! RSubj ++ neg ++ "би" ++ vp.participle.imperfect ! Perfective ! np.g ;
<VCond,Anter> => np.s ! RSubj ++ neg ++ "би" ++ auxHave.participle.imperfect ! np.g ++ vp.participle.perfect ! Perfective
} where {
neg = case p of {
Pos => "" ;
Neg => "не"
} ;
fut = case p of {
Pos => "ке" ;
Neg => "нема да"
} ;
li = case o of {
Main => "" ;
Quest => "ли"
}
}
} ;
UseCl t p cl = {
s = t.s ++ p.s ++ cl.s ! t.t ! t.a ! p.p ! Main
} ;
}