1
0
forked from GitHub/gf-core

a special form for Finnish verbs needed for oleva/olema; correction to weakGrade of "kt" and the like

This commit is contained in:
aarne
2013-03-31 13:56:22 +00:00
parent fbe9db8b55
commit dba883fb21
5 changed files with 19 additions and 14 deletions

View File

@@ -739,8 +739,9 @@ resource MorphoFin = ResFin ** open Prelude in {
tulleen = (nForms2N (dOttanut tullut)).s ; tulleen = (nForms2N (dOttanut tullut)).s ;
tullu : Str = weakGrade tultu ; tullu : Str = weakGrade tultu ;
tullun = (nForms2N (dUkko tultu (tullu + "n"))).s ; tullun = (nForms2N (dUkko tultu (tullu + "n"))).s ;
tulema = tule_ + "m" + a ; tule__ = Predef.tk 3 tulevat ;
tuleva = tule_ + "v" + a ; tulema = tule__ + "m" + a ;
tuleva = tule__ + "v" + a ;
vat = "v" + a + "t" vat = "v" + a + "t"
in in
{s = table { {s = table {
@@ -820,7 +821,8 @@ resource MorphoFin = ResFin ** open Prelude in {
"lk" + _ => ku + "l" + o ; "lk" + _ => ku + "l" + o ;
"rk" + _ => ku + "r" + o ; "rk" + _ => ku + "r" + o ;
("hk" | "tk") + _ => kukko ; -- *tahko-tahon, *pitkä-pitkän ("hk" | "tk") + _ => kukko ; -- *tahko-tahon, *pitkä-pitkän
"s" + ("k" | "p" | "t") + _ => kukko ; -- *lasku-lasvun, *raspi-rasvin, *lastu-lasdun ("f"|"s") + ("k" | "p" | "t") + _ => kukko ; -- *lasku-lasvun, *raspi-rasvin, *lastu-lasdun, *afta-aftan
("k"|"p") + "t" + _ => kukko ; -- *projekti-projekdin
x + "ku" => ku + x + "vu" ; x + "ku" => ku + x + "vu" ;
x + "k" + ("a" | "e" | "i" | "o" | "u" | "y" | "ä" | "ö") => ku + x + o ; x + "k" + ("a" | "e" | "i" | "o" | "u" | "y" | "ä" | "ö") => ku + x + o ;
x + "p" + ("a" | "e" | "i" | "o" | "u" | "y" | "ä" | "ö") => ku + x + "v" + o ; x + "p" + ("a" | "e" | "i" | "o" | "u" | "y" | "ä" | "ö") => ku + x + "v" + o ;

View File

@@ -514,8 +514,9 @@ oper
tulleena = Predef.tk 2 tullut + ("een" + a) ; tulleena = Predef.tk 2 tullut + ("een" + a) ;
tulleen = (noun2adj (nhn (sRae tullut tulleena))).s ; tulleen = (noun2adj (nhn (sRae tullut tulleena))).s ;
tullun = (noun2adj (nhn (sKukko tultu tullun (tultu + ("j"+a))))).s ; tullun = (noun2adj (nhn (sKukko tultu tullun (tultu + ("j"+a))))).s ;
tulema = tuje + "m" + a ; tule_ = Predef.tk 3 tulevat ;
tuleva = tuje + "v" + a ; tulema = tule_ + "m" + a ;
tuleva = tule_ + "v" + a ;
---- tulema = tuje + "m" + a ; ---- tulema = tuje + "m" + a ;
vat = "v" + a + "t" vat = "v" + a + "t"
in in

View File

@@ -59760,7 +59760,7 @@ love_VV = mkVV "rakastaa" ;
move_VV = mkVV "siirtyä" infIllat ; move_VV = mkVV "siirtyä" infIllat ;
offer_VV = mkVV "tarjoutua" infIllat ; offer_VV = mkVV "tarjoutua" infIllat ;
play_VV = mkWVV (k61A "leikkiä") infIllat ; ---??? play_VV = mkWVV (k61A "leikkiä") infIllat ; ---???
presume_VV = mkVV "arvella" infPresPartAgr ; presume_VV = mkVV (mkV "arvella" "arveli") infPresPartAgr ;
propose_VV = mkVV "ehdottaa" infPresPartAgr ; propose_VV = mkVV "ehdottaa" infPresPartAgr ;
race_VV = mkVV "rynnätä" infIllat ; race_VV = mkVV "rynnätä" infIllat ;
refuse_VV = mkVV "kieltäytyä" infElat ; refuse_VV = mkVV "kieltäytyä" infElat ;

View File

@@ -682,7 +682,7 @@ mkVS = overload {
caseV c v = {s = v.s ; sc = NPCase c ; h = v.h ; lock_V = <> ; p = v.p} ; caseV c v = {s = v.s ; sc = NPCase c ; h = v.h ; lock_V = <> ; p = v.p} ;
vOlla = { vOlla = {
s = table VForm ["olla";"ole";"on";"o";"olk";"olla";"oli";"oli";"olisi";"oll";"oltu";"ollu";"liene"] ; s = table SVForm ["olla";"ole";"on";"o";"olk";"olla";"oli";"oli";"olisi";"oll";"oltu";"ollu";"liene";"ole"] ;
sc = NPCase Nom ; h = Back ; lock_V = <> ; p = []} ; ---- lieneekö sc = NPCase Nom ; h = Back ; lock_V = <> ; p = []} ; ---- lieneekö
mk2V2 : V -> Prep -> V2 = \v,c -> v ** {c2 = c ; lock_V2 = <>} ; mk2V2 : V -> Prep -> V2 = \v,c -> v ** {c2 = c ; lock_V2 = <>} ;

View File

@@ -132,7 +132,7 @@ oper
-- verbs -- verbs
oper oper
SVForm : Type = Predef.Ints 12 ; SVForm : Type = Predef.Ints 13 ;
SVerb : Type = {s : SVForm => Str ; h : Harmony} ; SVerb : Type = {s : SVForm => Str ; h : Harmony} ;
-- used in Cat -- used in Cat
@@ -155,7 +155,8 @@ oper
9 => Predef.tk 2 (vf ! 9) ; -- tull(ut) 9 => Predef.tk 2 (vf ! 9) ; -- tull(ut)
10 => Predef.tk 1 (vf ! 10) ; -- tult(u) 10 => Predef.tk 1 (vf ! 10) ; -- tult(u)
11 => weakGrade (vf ! 10) ; -- tullu(n) 11 => weakGrade (vf ! 10) ; -- tullu(n)
12 => Predef.tk 1 (vf ! 11) -- tulle(e) 12 => Predef.tk 1 (vf ! 11) ; -- tulle(e)
13 => Predef.tk 3 (vf ! 3) -- tule(va)
} ; } ;
h = aHarmony (last (vf ! 0)) ; h = aHarmony (last (vf ! 0)) ;
} ; } ;
@@ -178,6 +179,7 @@ oper
tult_ = vh ! 10 ; tult_ = vh ! 10 ;
tullu__ = vh ! 11 ; -- tullu(n) tullu__ = vh ! 11 ; -- tullu(n)
tulle_ = vh ! 12 ; -- tulle(e) tulle_ = vh ! 12 ; -- tulle(e)
tule___ = vh ! 13 ; -- tule(va)
a = harmonyA sverb.h ; a = harmonyA sverb.h ;
o = harmonyV "o" "ö" sverb.h ; o = harmonyV "o" "ö" sverb.h ;
@@ -192,7 +194,7 @@ oper
tullun = plus tullu_ "n" ; tullun = plus tullu_ "n" ;
tultu = plus tult_ u ; tultu = plus tult_ u ;
tuleva = plus tule_ ("v" + a) ; tuleva = plus tule___ ("v" + a) ;
tullutN : Noun = snoun2noun b { tullutN : Noun = snoun2noun b {
s = table SNForm [ s = table SNForm [
@@ -229,7 +231,7 @@ oper
} ; } ;
tulema = plus tule__ ("m" + a) ; tulema = plus tule___ ("m" + a) ;
vat = "v" + a + "t" vat = "v" + a + "t"
in in
{s = table { {s = table {
@@ -288,7 +290,7 @@ oper
-- word formation functions -- word formation functions
sverb2snoun : SVerb1 -> SNoun = \v -> -- syöminen sverb2snoun : SVerb1 -> SNoun = \v -> -- syöminen
let teke = v.s ! 3 in { let teke = v.s ! 13 in {
s = table { s = table {
0 => partPlus teke "minen" ; 0 => partPlus teke "minen" ;
1 => partPlus teke "mise" ; 1 => partPlus teke "mise" ;
@@ -306,7 +308,7 @@ oper
} ; } ;
sverb2nounPresPartAct : SVerb1 -> SNoun = \v -> -- syövä sverb2nounPresPartAct : SVerb1 -> SNoun = \v -> -- syövä
let teke = v.s ! 3 in { let teke = v.s ! 13 in {
s = table { s = table {
0 => partPlus teke "va" ; 0 => partPlus teke "va" ;
1 => partPlus teke "va" ; 1 => partPlus teke "va" ;