1
0
forked from GitHub/gf-core

Finnish VV inf forms extended with "näyttää tulevan" and "toivoo tulevansa"

This commit is contained in:
aarne
2013-03-31 10:03:41 +00:00
parent 700365d630
commit fbe9db8b55
8 changed files with 369 additions and 170 deletions

View File

@@ -739,7 +739,8 @@ resource MorphoFin = ResFin ** open Prelude in {
tulleen = (nForms2N (dOttanut tullut)).s ;
tullu : Str = weakGrade tultu ;
tullun = (nForms2N (dUkko tultu (tullu + "n"))).s ;
tulema = Predef.tk 3 tulevat + "m" + a ;
tulema = tule_ + "m" + a ;
tuleva = tule_ + "v" + a ;
vat = "v" + a + "t"
in
{s = table {
@@ -782,7 +783,9 @@ resource MorphoFin = ResFin ** open Prelude in {
Inf Inf3Elat => tulema + "st" + a ;
Inf Inf3Illat => tulema + a + "n" ;
Inf Inf3Adess => tulema + "ll" + a ;
Inf Inf3Abess => tulema + "tt" + a
Inf Inf3Abess => tulema + "tt" + a ;
Inf InfPresPart => tuleva + "n" ;
Inf InfPresPartAgr => tuleva
} ;
sc = NPCase Nom ;
qp = pbool2bool (Predef.eqStr (last tulko) "o") ;

View File

@@ -118,12 +118,14 @@ param
;
InfForm =
Inf1
| Inf3Iness -- 5 forms acc. to Karlsson
| Inf3Elat
| Inf3Illat
| Inf3Adess
| Inf3Abess
Inf1 -- puhua
| Inf3Iness -- puhumassa
| Inf3Elat -- puhumasta
| Inf3Illat -- puhumaan
| Inf3Adess -- puhumalla
| Inf3Abess -- puhumatta
| InfPresPart -- puhuvan
| InfPresPartAgr -- puhuva(mme)
;
SType = SDecl | SQuest ;
@@ -441,9 +443,14 @@ oper
Neg => <(predV (verbOlla ** {sc = NPCase Nom ; qp = True ; p = []})).s ! VIInf vi ! Simul ! Pos ! agr,
(vp.s ! VIInf Inf3Abess ! Simul ! Pos ! agr).fin> -- olla/olemaan näkemättä
} ;
vph = case vp.qp of {True => Back ; False => Front} ;
poss = case vi of {
InfPresPartAgr => possSuffixGen vph agr ; -- toivon nukkuva + ni
_ => []
} ;
compl = vp.s2 ! fin ! pol ! agr ++ vp.adv ! pol ++ vp.ext -- compl. case propagated
in
verb.p1.fin ++ verb.p1.inf ++ verb.p2 ++ compl ;
verb.p1.fin ++ verb.p1.inf ++ poss ++ verb.p2 ++ compl ;
infVP : NPForm -> Polarity -> Agr -> VP -> InfForm -> Str = infVPGen Pos ;
@@ -460,6 +467,8 @@ oper
Inf Inf3Illat => "olemaan" ;
Inf Inf3Adess => "olemalla" ;
Inf Inf3Abess => "olematta" ;
Inf InfPresPart => "olevan" ;
Inf InfPresPartAgr => "oleva" ;
v => olla.s ! v
}
} ;
@@ -505,7 +514,8 @@ oper
tulleena = Predef.tk 2 tullut + ("een" + a) ;
tulleen = (noun2adj (nhn (sRae tullut tulleena))).s ;
tullun = (noun2adj (nhn (sKukko tultu tullun (tultu + ("j"+a))))).s ;
tulema = Predef.tk 3 tulevat + "m" + a ;
tulema = tuje + "m" + a ;
tuleva = tuje + "v" + a ;
---- tulema = tuje + "m" + a ;
vat = "v" + a + "t"
in
@@ -547,7 +557,9 @@ oper
Inf Inf3Elat => tulema + "st" + a ;
Inf Inf3Illat => tulema + a + "n" ;
Inf Inf3Adess => tulema + "ll" + a ;
Inf Inf3Abess => tulema + "tt" + a
Inf Inf3Abess => tulema + "tt" + a ;
Inf InfPresPart => tuleva + "n" ;
Inf InfPresPartAgr => tuleva
}
} ;
@@ -738,6 +750,11 @@ oper
isPron = False -- no special acc form
} ;
possSuffixGen : Harmony -> Agr -> Str = \h,agr -> case h of {
Front => BIND ++ possSuffixFront agr ;
Back => BIND ++ possSuffix agr
} ;
possSuffixFront : Agr -> Str = \agr ->
table Agr ["ni" ; "si" ; "nsä" ; "mme" ; "nne" ; "nsä" ; "nne"] ! agr ;
possSuffix : Agr -> Str = \agr ->

File diff suppressed because it is too large Load Diff

View File

@@ -3,7 +3,7 @@ import qualified Data.Set as S
-- comment out words that are predefined in another lexicon
-- runghc ElimPredef.hs <DictEngFin.gf
removeFile = "todo.txt"
removeMsg = "MANUAL10"
removeMsg = "MANUALVV"
-- also used for temporarily eliminating whatever from compilation
--removeFile = "commentOut"

View File

@@ -59,6 +59,8 @@ oper
infFirst : InfForm ; -- e.g. "tehdä"
infElat : InfForm ; -- e.g. "tekemästä"
infIllat : InfForm ; -- e.g. "tekemään"
infPresPart : InfForm ; -- e.g. "tekevän"
infPresPartAgr : InfForm ; -- e.g. "tekevänsä"
-- The following type is used for defining *rection*, i.e. complements
-- of many-place verbs and adjective. A complement can be defined by
@@ -228,10 +230,14 @@ oper
-- questions, verb phrases, and adjectives.
mkVV = overload {
mkVV : Str -> VV -- e.g. "yrittää"
mkVV : Str -> VV -- e.g. "yrittää" (puhua)
= \s -> mkVVf (mkV s) infFirst ;
mkVV : V -> VV -- e.g. "alkaa"
mkVV : V -> VV -- e.g. "alkaa" (puhua)
= \v -> mkVVf v infFirst ;
mkVV : Str -> InfForm -> VV -- e.g. "ruveta" (puhumaan)
= \s,i -> mkVVf (mkV s) i ;
mkVV : V -> InfForm -> VV -- e.g. "lakata" (puhumasta)
= \v,i -> mkVVf v i ;
} ;
mkVS = overload {
@@ -313,7 +319,7 @@ mkVS = overload {
ablative = Ablat ;
allative = Allat ;
infFirst = Inf1 ; infElat = Inf3Elat ; infIllat = Inf3Illat ;
infFirst = Inf1 ; infElat = Inf3Elat ; infIllat = Inf3Illat ; infPresPart = InfPresPart ; infPresPartAgr = InfPresPartAgr ;
prePrep : Case -> Str -> Prep =
\c,p -> {c = NPCase c ; s = p ; isPre = True ; lock_Prep = <>} ;

View File

@@ -192,6 +192,8 @@ oper
tullun = plus tullu_ "n" ;
tultu = plus tult_ u ;
tuleva = plus tule_ ("v" + a) ;
tullutN : Noun = snoun2noun b {
s = table SNForm [
tullut ;
@@ -270,7 +272,9 @@ oper
Inf Inf3Elat => plus tulema ("st" + a) ;
Inf Inf3Illat => plus tulema (a + "n") ;
Inf Inf3Adess => plus tulema ("ll" + a) ;
Inf Inf3Abess => plus tulema ("tt" + a)
Inf Inf3Abess => plus tulema ("tt" + a) ;
Inf InfPresPart => plus tuleva "n" ;
Inf InfPresPartAgr => tuleva
} ;
sc = NPCase Nom ;
lock_V = <>

View File

@@ -81,6 +81,7 @@ oper
mkWVV = overload {
mkWVV : (_ : Str) -> VV = \s -> mkVV (mkV s) ;
mkWVV : (_ : VForms) -> VV = \vf -> mkVV (mkV (lin VK {s = vf})) ;
mkWVV : (_ : VForms) -> InfForm -> VV = \vf,i -> mkVV (mkV (lin VK {s = vf})) i ;
mkWVV : (_ : V) -> VV = \v -> mkVV v ;
mkWVV : VForms -> Str -> VV = \vf,s -> mkVV (mkV (mkV (lin VK {s = vf})) s) ;
} ;

View File

@@ -115,12 +115,19 @@ Spent 30 minutes going through 230 10+ words. Changed a half of them. Some ARBIT
business language (e.g. "officer", "upseeri"/"vastaava"?). This changed 1362 sentences.
Now, after 2 days of work, we have version 10-, where 2700 translations have changed from version 1-. Spent approximately
- 2 hours manually correcting the lexicon
- 3 hours manually correcting the lexicon
- 5 hours analysing the problems and designing analysis tools
- 8 hours fixing RGL bugs
31/3
Dictionary revision: 250 words with 6--10 occurrences ; 107 changed in 30 minutes. Changes in 557 sentences.
RGL fix: more infinitive forms (näyttää nukkuvan, toivoo nukkuvansa); forms available through mkVV.
Checked 50 VV's in Dict. 145 changes in translations.