mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-06 09:42:50 -06:00
*** empty log message ***
This commit is contained in:
@@ -918,7 +918,7 @@ oper totDet: Adjective = {s = table {
|
||||
kakojDet: Adjective = i_oj_EndDecl "как" [];
|
||||
nikakojDet: Adjective = i_oj_EndDecl "никак" [];
|
||||
bolshinstvoSgDet: Adjective = extAdjFromSubst (oEnd_SgDecl "большинств");
|
||||
mnogoSgDet: Adjective = extAdjFromSubst (kg_oEnd_SgDecl "мног");
|
||||
mnogoSgDet: Adjective = extAdjFromSubst (kg_oEnd_SgDecl "мног");
|
||||
skolkoSgDet: Adjective = extAdjFromSubst (kg_oEnd_SgDecl "скольк");
|
||||
|
||||
bolshinstvoPlDet: Adjective = extAdjFromSubst (oEnd_PlDecl "большинств");
|
||||
@@ -1003,7 +1003,7 @@ oper uy_j_EndDecl : Str -> Adjective = \s ->{s = table {
|
||||
oper vesDet: Adjective = {s = table {
|
||||
AF Nom _ (ASg Masc) => "весь";
|
||||
AF Nom _ (ASg Fem) => "вся";
|
||||
AF Nom _ APl => "все";
|
||||
AF Nom _ (ASg Neut) => "всё";
|
||||
AF Nom _ APl => "все";
|
||||
AF Acc Animate (ASg Masc) => "весь";
|
||||
AF Acc Inanimate (ASg Masc) => "всего";
|
||||
@@ -1343,26 +1343,26 @@ oper mkPassive: AspectVoice -> PastVerb -> AspectVoice = \av, pv ->
|
||||
PSF APl => ["были "] + del + "ны"
|
||||
};
|
||||
|
||||
|
||||
-- "verbDecl" sorts out verbs according to the aspect and voice parameters.
|
||||
-- It produces the full conjugation table for a verb entry
|
||||
\a, c, del, sgP1End, sgMascPast, imperSgP2, inf -> case a of
|
||||
|
||||
oper verbDecl: Aspect -> Conjugation -> Str -> Str -> Str -> Str ->Str -> Verbum =
|
||||
\a, c, del, sgP1End, sgMascPast, imperSgP2, inf -> case a of
|
||||
FirstE => mkVerb (perfectiveActivePattern inf imperSgP2 (presentConj1E del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
Second => mkVerb (perfectiveActivePattern inf imperSgP2 (presentConj2 del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
Mixed => mkVerb (perfectiveActivePattern inf imperSgP2 (presentConjMixed del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
Dolzhen => mkVerb (perfectiveActivePattern inf imperSgP2 (presentConjDolzhen del sgP1End) (pastConjDolzhen sgMascPast)) (pastConjDolzhen sgMascPast)
|
||||
} ;
|
||||
Imperfective => case c of {
|
||||
First => mkVerb (imperfectiveActivePattern inf imperSgP2 (presentConj1 del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
FirstE => mkVerb (imperfectiveActivePattern inf imperSgP2 (presentConj1E del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
Second => mkVerb (imperfectiveActivePattern inf imperSgP2 (presentConj2 del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
Mixed => mkVerb (imperfectiveActivePattern inf imperSgP2 (presentConjMixed del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast) ;
|
||||
Dolzhen => mkVerb (imperfectiveActivePattern inf imperSgP2 (presentConjDolzhen del sgP1End) (pastConjDolzhen sgMascPast)) (pastConjDolzhen sgMascPast)
|
||||
}
|
||||
};
|
||||
|
||||
-- for verbs like "мочь" ("can") with changing consonants (first conjugation):
|
||||
{ Perfective => case c of {
|
||||
First => mkVerb (perfectiveActivePattern inf imperSgP2 (presentConj1 del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
FirstE => mkVerb (perfectiveActivePattern inf imperSgP2 (presentConj1E del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
Second => mkVerb (perfectiveActivePattern inf imperSgP2 (presentConj2 del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
Mixed => mkVerb (perfectiveActivePattern inf imperSgP2 (presentConjMixed del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
Dolzhen => mkVerb (perfectiveActivePattern inf imperSgP2 (presentConjDolzhen del sgP1End) (pastConjDolzhen sgMascPast)) (pastConjDolzhen sgMascPast)
|
||||
} ;
|
||||
Imperfective => case c of {
|
||||
First => mkVerb (imperfectiveActivePattern inf imperSgP2 (presentConj1 del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
FirstE => mkVerb (imperfectiveActivePattern inf imperSgP2 (presentConj1E del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
Second => mkVerb (imperfectiveActivePattern inf imperSgP2 (presentConj2 del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast);
|
||||
Mixed => mkVerb (imperfectiveActivePattern inf imperSgP2 (presentConjMixed del sgP1End) (pastConj sgMascPast)) (pastConj sgMascPast) ;
|
||||
Dolzhen => mkVerb (imperfectiveActivePattern inf imperSgP2 (presentConjDolzhen del sgP1End) (pastConjDolzhen sgMascPast)) (pastConjDolzhen sgMascPast)
|
||||
}
|
||||
};
|
||||
|
||||
-- for verbs like "мочь" ("can") with changing consonants (first conjugation):
|
||||
-- "могу - можешь"
|
||||
@@ -1385,23 +1385,23 @@ oper
|
||||
} ;
|
||||
asp = av1.asp
|
||||
};
|
||||
"а" ; "е" ; "ё" ; "и" ; "о" ; "у" ;
|
||||
"ы" ; "э" ; "ю" ; "я"
|
||||
} ;
|
||||
|
||||
oper mkPassive: AspectVoice -> PastVerb -> AspectVoice = \av, pv ->
|
||||
{ s = table {
|
||||
VINF => av.s ! VINF + "ся";
|
||||
VIMP Sg P1 => av.s ! (VIMP Sg P1) +"сь" ;
|
||||
VIMP Pl P1 => av.s ! (VIMP Pl P1) +"ся";
|
||||
|
||||
VIMP Sg P2 => av.s ! (VIMP Sg P2 ) +"сь";
|
||||
VIMP Pl P2 => av.s! (VIMP Pl P2) +"сь";
|
||||
|
||||
vowels : Strs = strs {
|
||||
"а" ; "е" ; "ё" ; "и" ; "о" ; "у" ;
|
||||
"ы" ; "э" ; "ю" ; "я"
|
||||
} ;
|
||||
|
||||
oper mkPassive: AspectVoice -> PastVerb -> AspectVoice = \av, pv ->
|
||||
{ s = table {
|
||||
VINF => av.s ! VINF + "ся";
|
||||
VIMP Sg P1 => av.s ! (VIMP Sg P1) +"сь" ;
|
||||
VIMP Pl P1 => av.s ! (VIMP Pl P1) +"ся";
|
||||
|
||||
VIMP Sg P2 => av.s ! (VIMP Sg P2 ) +"сь";
|
||||
|
||||
VIMP Pl P3 => av.s ! (VIMP Pl P3) +"ся";
|
||||
|
||||
VSUB (ASg Masc) => pv ! (PSF (ASg Masc)) + "ся"+[" бы"];
|
||||
VIMP Pl P2 => av.s! (VIMP Pl P2) +"сь";
|
||||
VIMP Sg P3 => av.s ! (VIMP Sg P3) +"ся";
|
||||
|
||||
VIMP Pl P3 => av.s ! (VIMP Pl P3) +"ся";
|
||||
|
||||
VSUB (ASg Masc) => pv ! (PSF (ASg Masc)) + "ся"+[" бы"];
|
||||
VSUB (ASg Fem) => pv ! (PSF (ASg Fem)) + "сь"+[" бы"];
|
||||
@@ -1420,22 +1420,20 @@ oper
|
||||
VIND APl (VPresent P3) => av.s !( VIND APl (VPresent P3)) + "ся" ;
|
||||
VIND (ASg _) (VFuture P1) => av.s ! (VIND (ASg Masc) (VFuture P1)) + "сь";
|
||||
VIND (ASg _) (VFuture P2) => av.s! (VIND (ASg Masc) (VFuture P2) )+ "ся";
|
||||
|
||||
VIND (VFuture Pl P2) => av.s! (VIND (VFuture Pl P2) )+ "сь";
|
||||
VIND (VFuture Pl P3) => av.s! (VIND (VFuture Pl P3)) + "ся";
|
||||
VIND (VPast (ASg Masc)) => av.s ! (VIND (VPast (ASg Masc) )) + "ся";
|
||||
VIND (VPast (ASg Fem)) => av.s ! (VIND (VPast (ASg Fem) )) + "сь";
|
||||
VIND (VPast (ASg Neut)) => av.s ! (VIND (VPast (ASg Neut)) ) + "сь";
|
||||
VIND (VPast APl) => av.s ! (VIND (VPast APl)) + "сь"
|
||||
} ;
|
||||
asp = av.asp
|
||||
|
||||
};
|
||||
|
||||
-- Generation the imperfective active pattern given
|
||||
-- a number of basic conjugation forms.
|
||||
|
||||
oper
|
||||
VIND (ASg _) (VFuture P3) => av.s! (VIND (ASg Masc) (VFuture P3)) + "ся";
|
||||
VIND APl (VFuture P1) => av.s! (VIND APl (VFuture P1) )+ "ся";
|
||||
|
||||
VIND APl (VFuture P2) => av.s! (VIND APl (VFuture P2) )+ "сь";
|
||||
VIND APl (VFuture P3) => av.s! (VIND APl (VFuture P3)) + "ся";
|
||||
VIND (ASg Masc) VPast => av.s ! (VIND (ASg Masc) VPast ) + "ся";
|
||||
VIND (ASg Fem) VPast => av.s ! (VIND (ASg Fem) VPast ) + "сь";
|
||||
VIND (ASg Neut) VPast => av.s ! (VIND (ASg Neut) VPast) + "сь";
|
||||
VIND APl VPast => av.s ! (VIND APl VPast ) + "сь"
|
||||
} ;
|
||||
asp = av.asp
|
||||
|
||||
};
|
||||
|
||||
-- Generation the imperfective active pattern given
|
||||
-- a number of basic conjugation forms.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user