added some esoteric verb forms to Fin (not used in resource API but nice to show): potential, passive imperatives, infinitives 2,4,5. Remains to carry out in stemmed/StemFin.

This commit is contained in:
aarne
2013-11-28 22:01:38 +00:00
parent 945650f653
commit ece03aca51
3 changed files with 125 additions and 130 deletions

View File

@@ -719,6 +719,7 @@ resource MorphoFin = ResFin ** open Prelude in {
vforms2V : VForms -> Verb ** {qp : Bool} = \vh ->
let
tulla = vh ! 0 ;
tull = init tulla ;
tulen = vh ! 1 ;
tulee = vh ! 2 ;
tulevat = vh ! 3 ;
@@ -730,12 +731,13 @@ resource MorphoFin = ResFin ** open Prelude in {
tullut = vh ! 9 ;
tultu = vh ! 10 ;
tult = init tultu ;
tullun = vh ! 11 ;
lienee = vh ! 11 ;
tule_ = init tulen ;
tuli_ = init tulin ;
a = last tulkaa ;
tulko = Predef.tk 2 tulkaa + (ifTok Str a "a" "o" "ö") ;
tulkoo = tulko + last tulko ;
o = last tulko ;
tulkoo = tulko + o ;
tullee = Predef.tk 2 tullut + "ee" ;
tulleen = (nForms2N (dOttanut tullut)).s ;
tullu : Str = weakGrade tultu ;
@@ -743,10 +745,30 @@ resource MorphoFin = ResFin ** open Prelude in {
tule__ = Predef.tk 3 tulevat ;
tulema = tule__ + "m" + a ;
tuleva = tule__ + "v" + a ;
vat = "v" + a + "t"
vat = "v" + a + "t" ;
liene = init lienee ;
tulta = tult + a ;
tulevaP = (noun2adj (nhn (sKukko tuleva (tuleva + "n") (init tuleva + "ia")))).s ;
tultavaP = (noun2adj (nhn (sKukko (tulta + "v" + a) (tulta + "v" + a + "n") (tulta + "vi" + a)))).s ;
in
{s = table {
Inf Inf1 => tulla ;
Inf Inf1Long => tulla + "kse" ;
Inf Inf2Iness => tull + "ess" + a ;
Inf Inf2Instr => tull + "en" ;
Inf Inf2InessPass => tult + a + "ess" + "a" ;
Inf Inf2InstrPass => tult + a + "en" ;
Inf Inf3Iness => tulema + "ss" + a ;
Inf Inf3Elat => tulema + "st" + a ;
Inf Inf3Illat => tulema + a + "n" ;
Inf Inf3Adess => tulema + "ll" + a ;
Inf Inf3Abess => tulema + "tt" + a ;
Inf Inf4Nom => tule__ + "minen" ;
Inf Inf4Part => tule__ + "mist" + a ;
Inf Inf5 => tulema + "isill" + a ;
Inf InfPresPart => tuleva + "n" ;
Inf InfPresPartAgr => tuleva ;
Presn Sg P1 => tule_ + "n" ;
Presn Sg P2 => tule_ + "t" ;
Presn Sg P3 => tulee ;
@@ -765,6 +787,13 @@ resource MorphoFin = ResFin ** open Prelude in {
Condit Pl P1 => tulisi + "mme" ; --# notpresent
Condit Pl P2 => tulisi + "tte" ; --# notpresent
Condit Pl P3 => tulisi + vat ; --# notpresent
Potent Sg P1 => liene + "n" ; --# notpresent
Potent Sg P2 => liene + "t" ; --# notpresent
Potent Sg P3 => lienee ; --# notpresent
Potent Pl P1 => liene + "mme" ; --# notpresent
Potent Pl P2 => liene + "tte" ; --# notpresent
Potent Pl P3 => liene + vat ; --# notpresent
PotentNeg => liene ; --# notpresent
Imper Sg => tule_ ;
Imper Pl => tulkaa ;
ImperP3 Sg => tulkoo + "n" ;
@@ -777,17 +806,17 @@ resource MorphoFin = ResFin ** open Prelude in {
PassImpf False => tultu ; --# notpresent
PassCondit True => tult + a + "isiin" ; --# notpresent
PassCondit False => tult + a + "isi" ; --# notpresent
PassPotent True => liene + "t" + a + a + "n" ; --# notpresent
PassPotent False => liene + "t" + a ; --# notpresent
PassImper True => tult + a + "k" + o + o + "n" ;
PassImper False => tult + a + "k" + o ;
PresPartAct a => tulevaP ! a ;
PresPartPass a => tultavaP ! a ;
PastPartAct (AN n) => tulleen ! n ;
PastPartAct AAdv => tullee + "sti" ;
PastPartPass (AN n) => tullun ! n ;
PastPartPass AAdv => tullu + "sti" ;
Inf Inf3Iness => tulema + "ss" + a ;
Inf Inf3Elat => tulema + "st" + a ;
Inf Inf3Illat => tulema + a + "n" ;
Inf Inf3Adess => tulema + "ll" + a ;
Inf Inf3Abess => tulema + "tt" + a ;
Inf InfPresPart => tuleva + "n" ;
Inf InfPresPartAgr => tuleva
PastPartPass AAdv => tullu + "sti"
} ;
sc = NPCase Nom ;
qp = pbool2bool (Predef.eqStr (last tulko) "o") ;