mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-23 01:52:50 -06:00
a special form for Finnish verbs needed for oleva/olema; correction to weakGrade of "kt" and the like
This commit is contained in:
@@ -738,9 +738,10 @@ resource MorphoFin = ResFin ** open Prelude in {
|
|||||||
tullee = Predef.tk 2 tullut + "ee" ;
|
tullee = Predef.tk 2 tullut + "ee" ;
|
||||||
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 ;
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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 ;
|
||||||
|
|||||||
@@ -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 = <>} ;
|
||||||
|
|||||||
@@ -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" ;
|
||||||
|
|||||||
Reference in New Issue
Block a user