mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-23 03:32:51 -06:00
Finnish object cases in lexicon and Paradigms
This commit is contained in:
@@ -91,7 +91,7 @@ lin
|
|||||||
go_V = regV "mennä" ;
|
go_V = regV "mennä" ;
|
||||||
green_A = mkADeg (regN "vihreä") "vihreämpi" "vihrein" ;
|
green_A = mkADeg (regN "vihreä") "vihreämpi" "vihrein" ;
|
||||||
harbour_N = nKukko "satama" "sataman" "satamia" ;
|
harbour_N = nKukko "satama" "sataman" "satamia" ;
|
||||||
hate_V2 = dirV2 (regV "vihata") ;
|
hate_V2 = mkV2 (regV "vihata") cpartitive ;
|
||||||
hat_N = nLukko "hattu" ;
|
hat_N = nLukko "hattu" ;
|
||||||
have_V2 = dirV2 (caseV adessive vOlla) ;
|
have_V2 = dirV2 (caseV adessive vOlla) ;
|
||||||
hear_V2 = dirV2 (regV "kuulla") ;
|
hear_V2 = dirV2 (regV "kuulla") ;
|
||||||
@@ -142,7 +142,7 @@ lin
|
|||||||
pen_N = nLukko "kynä" ;
|
pen_N = nLukko "kynä" ;
|
||||||
planet_N = nLukko "planeetta" ;
|
planet_N = nLukko "planeetta" ;
|
||||||
plastic_N = regN "muovi" ;
|
plastic_N = regN "muovi" ;
|
||||||
play_V2 = dirV2 (regV "pelata") ; --- leikkiä, soittaa
|
play_V2 = mkV2 (regV "pelata") cpartitive ; --- leikkiä, soittaa
|
||||||
policeman_N = regN "poliisi" ;
|
policeman_N = regN "poliisi" ;
|
||||||
priest_N = regN "pappi" ;
|
priest_N = regN "pappi" ;
|
||||||
probable_AS = mkAS (mkA (nNainen "todennäköistä")) ; --- for vowel harmony
|
probable_AS = mkAS (mkA (nNainen "todennäköistä")) ; --- for vowel harmony
|
||||||
@@ -162,7 +162,7 @@ lin
|
|||||||
school_N = nLukko "koulu" ;
|
school_N = nLukko "koulu" ;
|
||||||
science_N = regN "tiede" ;
|
science_N = regN "tiede" ;
|
||||||
sea_N = nMeri "meri" ;
|
sea_N = nMeri "meri" ;
|
||||||
seek_V2 = dirV2 (regV "etsiä") ;
|
seek_V2 = mkV2 (regV "etsiä") cpartitive ;
|
||||||
see_V2 = dirV2 (
|
see_V2 = dirV2 (
|
||||||
mk12V "nähdä" "näkee" "näen" "näkevät" "nähkää" "nähdään"
|
mk12V "nähdä" "näkee" "näen" "näkevät" "nähkää" "nähdään"
|
||||||
"näki" "näin" "näkisi" "nähnyt" "nähty" "nähdyn") ;
|
"näki" "näin" "näkisi" "nähnyt" "nähty" "nähdyn") ;
|
||||||
@@ -180,7 +180,7 @@ lin
|
|||||||
small_A = mkADeg (reg2N "pieni" "pieniä") "pienempi" "pienin" ;
|
small_A = mkADeg (reg2N "pieni" "pieniä") "pienempi" "pienin" ;
|
||||||
snake_N = regN "käärme" ;
|
snake_N = regN "käärme" ;
|
||||||
sock_N = nLukko "sukka" ;
|
sock_N = nLukko "sukka" ;
|
||||||
speak_V2 = dirV2 (regV "puhua") ;
|
speak_V2 = mkV2 (regV "puhua") cpartitive ;
|
||||||
star_N = nSylki "tähti" ;
|
star_N = nSylki "tähti" ;
|
||||||
steel_N = regN "teräs" ;
|
steel_N = regN "teräs" ;
|
||||||
stone_N = nSylki "kivi" ;
|
stone_N = nSylki "kivi" ;
|
||||||
@@ -213,7 +213,7 @@ lin
|
|||||||
)
|
)
|
||||||
"lämpimämpi" "lämpimin" ;
|
"lämpimämpi" "lämpimin" ;
|
||||||
war_N = nLukko "sota" ;
|
war_N = nLukko "sota" ;
|
||||||
watch_V2 = dirV2 (regV "katsella") ;
|
watch_V2 = mkV2 (regV "katsella") cpartitive ;
|
||||||
water_N = reg3N "vesi" "veden" "vesiä" ;
|
water_N = reg3N "vesi" "veden" "vesiä" ;
|
||||||
white_A = regA "valkoinen" ;
|
white_A = regA "valkoinen" ;
|
||||||
window_N = reg2N "ikkuna" "ikkunoita" ;
|
window_N = reg2N "ikkuna" "ikkunoita" ;
|
||||||
@@ -325,35 +325,35 @@ lin
|
|||||||
cut_V2 = dirV2 (reg2V "leikata" "leikkasi") ;
|
cut_V2 = dirV2 (reg2V "leikata" "leikkasi") ;
|
||||||
dig_V = regV "kaivaa" ;
|
dig_V = regV "kaivaa" ;
|
||||||
fall_V = reg3V "pudota" "putoan" "putosi" ;
|
fall_V = reg3V "pudota" "putoan" "putosi" ;
|
||||||
fear_V2 = dirV2 (reg3V "pelätä" "pelkään" "pelkäsi") ;
|
fear_V2 = mkV2 (reg3V "pelätä" "pelkään" "pelkäsi") cpartitive ;
|
||||||
fight_V2 = dirV2 (regV "taistella") ;
|
fight_V2 = mkV2 (regV "taistella") (postPrep partitive "vastaan") ;
|
||||||
float_V = regV "kellua" ;
|
float_V = regV "kellua" ;
|
||||||
flow_V = reg3V "virrata" "virtaan" "virtasi" ;
|
flow_V = reg3V "virrata" "virtaan" "virtasi" ;
|
||||||
fly_V = regV "lentää" ;
|
fly_V = regV "lentää" ;
|
||||||
freeze_V = regV "jäätyä" ;
|
freeze_V = regV "jäätyä" ;
|
||||||
give_V3 = dirdirV3 (reg3V "antaa" "annan" "antoi") ;
|
give_V3 = dirdirV3 (reg3V "antaa" "annan" "antoi") ;
|
||||||
hit_V2 = dirV2 (regV "lyödä") ;
|
hit_V2 = mkV2 (regV "lyödä") cpartitive ;
|
||||||
hold_V2 = dirV2 (regV "pitää") ;
|
hold_V2 = mkV2 (regV "pitää") cpartitive ;
|
||||||
hunt_V2 = dirV2 (regV "metsästää") ;
|
hunt_V2 = mkV2 (regV "metsästää") cpartitive ;
|
||||||
kill_V2 = dirV2 (regV "tappaa") ;
|
kill_V2 = dirV2 (regV "tappaa") ;
|
||||||
laugh_V = reg3V "nauraa" "nauran" "nauroi" ;
|
laugh_V = reg3V "nauraa" "nauran" "nauroi" ;
|
||||||
lie_V = reg3V "maata" "makaan" "makasi" ;
|
lie_V = reg3V "maata" "makaan" "makasi" ;
|
||||||
play_V = regV "pelata" ;
|
play_V = regV "pelata" ;
|
||||||
pull_V2 = dirV2 (regV "vetää") ;
|
pull_V2 = dirV2 (regV "vetää") ;
|
||||||
push_V2 = dirV2 (regV "työntää") ;
|
push_V2 = dirV2 (regV "työntää") ;
|
||||||
rub_V2 = dirV2 (regV "hieroa") ;
|
rub_V2 = mkV2 (regV "hieroa") cpartitive ;
|
||||||
scratch_V2 = dirV2 (regV "raapia") ;
|
scratch_V2 = mkV2 (regV "raapia") cpartitive ;
|
||||||
sew_V = regV "kylvää" ;
|
sew_V = regV "kylvää" ;
|
||||||
sing_V = regV "laulaa" ;
|
sing_V = regV "laulaa" ;
|
||||||
sit_V = regV "istua" ;
|
sit_V = regV "istua" ;
|
||||||
smell_V = reg2V "haistaa" "haistoi" ;
|
smell_V = reg2V "haistaa" "haistoi" ;
|
||||||
spit_V = regV "sylkeä" ;
|
spit_V = regV "sylkeä" ;
|
||||||
split_V2 = dirV2 (reg2V "halkaista" "halkaisi") ;
|
split_V2 = dirV2 (reg2V "halkaista" "halkaisi") ;
|
||||||
squeeze_V2 = dirV2 (regV "puristaa") ;
|
squeeze_V2 = mkV2 (regV "puristaa") cpartitive ;
|
||||||
stab_V2 = dirV2 (regV "pistää") ;
|
stab_V2 = mkV2 (regV "pistää") cpartitive ;
|
||||||
stand_V = mk12V "seistä" "seisoo" "seison" "seisovat" "seiskää" "seistään"
|
stand_V = mk12V "seistä" "seisoo" "seison" "seisovat" "seiskää" "seistään"
|
||||||
"seisoi" "seisoin" "seisoisi" "seissyt" "seisty" "seistyn" ; --- *seisoivät
|
"seisoi" "seisoin" "seisoisi" "seissyt" "seisty" "seistyn" ; --- *seisoivät
|
||||||
suck_V2 = dirV2 (regV "imeä") ;
|
suck_V2 = mkV2 (regV "imeä") cpartitive ;
|
||||||
swell_V = mk12V "turvota" "turpoaa" "turpoan" "turpoavat" "turvotkaa" "turvotaan"
|
swell_V = mk12V "turvota" "turpoaa" "turpoan" "turpoavat" "turvotkaa" "turvotaan"
|
||||||
"turposi" "turposin" "turpoaisi" "turvonnut" "turvottu" "turvotun" ;
|
"turposi" "turposin" "turpoaisi" "turvonnut" "turvottu" "turvotun" ;
|
||||||
swim_V = reg3V "uida" "uin" "ui" ;
|
swim_V = reg3V "uida" "uin" "ui" ;
|
||||||
@@ -381,5 +381,6 @@ lin
|
|||||||
oper
|
oper
|
||||||
mkOrd : N -> Ord ;
|
mkOrd : N -> Ord ;
|
||||||
mkOrd x = {s = \\n,c => x.s ! NCase n c; lock_Ord = <> } ;
|
mkOrd x = {s = \\n,c => x.s ! NCase n c; lock_Ord = <> } ;
|
||||||
|
cpartitive = casePrep partitive ;
|
||||||
|
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
@@ -285,19 +285,17 @@ oper
|
|||||||
|
|
||||||
--3 Two-place verbs
|
--3 Two-place verbs
|
||||||
--
|
--
|
||||||
-- Two-place verbs need a case, and can have a pre- or postposition.
|
-- Two-place verbs need an object case, and can have a pre- or postposition.
|
||||||
|
-- The default is direct (accusative) object. There is also a special case
|
||||||
|
-- with case only. The string-only argument case yields a regular verb with
|
||||||
|
-- accusative object.
|
||||||
|
|
||||||
mkV2 : V -> Prep -> V2 ;
|
mkV2 : overload {
|
||||||
|
mkV2 : Str -> V2 ;
|
||||||
-- If the complement needs just a case, the following special function can be used.
|
mkV2 : V -> V2 ;
|
||||||
|
mkV2 : V -> Case -> V2 ;
|
||||||
caseV2 : V -> Case -> V2 ;
|
mkV2 : V -> Prep -> V2 ;
|
||||||
|
} ;
|
||||||
-- Verbs with a direct (accusative) object
|
|
||||||
-- are special, since their complement case is finally decided in syntax.
|
|
||||||
-- But this is taken care of in $VerbFin$.
|
|
||||||
|
|
||||||
dirV2 : V -> V2 ;
|
|
||||||
|
|
||||||
|
|
||||||
--3 Three-place verbs
|
--3 Three-place verbs
|
||||||
@@ -557,9 +555,9 @@ reg3N = \vesi,veden,vesi
|
|||||||
v2v (MorphoFin.vHuoltaa ottaa otan otti otin) ** {sc = NPCase Nom ; lock_V = <>} ;
|
v2v (MorphoFin.vHuoltaa ottaa otan otti otin) ** {sc = NPCase Nom ; lock_V = <>} ;
|
||||||
|
|
||||||
|
|
||||||
mkV2 = \v,c -> v ** {c2 = c ; lock_V2 = <>} ;
|
mk2V2 = \v,c -> v ** {c2 = c ; lock_V2 = <>} ;
|
||||||
caseV2 = \v,c -> mkV2 v (casePrep c) ;
|
caseV2 = \v,c -> mk2V2 v (casePrep c) ;
|
||||||
dirV2 v = mkV2 v accPrep ;
|
dirV2 v = mk2V2 v accPrep ;
|
||||||
|
|
||||||
mkAdv : Str -> Adv = \s -> {s = s ; lock_Adv = <>} ;
|
mkAdv : Str -> Adv = \s -> {s = s ; lock_Adv = <>} ;
|
||||||
|
|
||||||
@@ -578,11 +576,11 @@ reg3N = \vesi,veden,vesi
|
|||||||
A2V : Type = A2 ;
|
A2V : Type = A2 ;
|
||||||
|
|
||||||
mkV0 v = v ** {lock_V = <>} ;
|
mkV0 v = v ** {lock_V = <>} ;
|
||||||
mkV2S v p = mkV2 v p ** {lock_V2 = <>} ;
|
mkV2S v p = mk2V2 v p ** {lock_V2 = <>} ;
|
||||||
mkV2V v p = mkV2 v p ** {lock_V2 = <>} ;
|
mkV2V v p = mk2V2 v p ** {lock_V2 = <>} ;
|
||||||
mkVA v p = v ** {c2 = p ; lock_VA = <>} ;
|
mkVA v p = v ** {c2 = p ; lock_VA = <>} ;
|
||||||
mkV2A v p q = v ** {c2 = p ; c3 = q ; lock_V2A = <>} ;
|
mkV2A v p q = v ** {c2 = p ; c3 = q ; lock_V2A = <>} ;
|
||||||
mkV2Q v p = mkV2 v p ** {lock_V2 = <>} ;
|
mkV2Q v p = mk2V2 v p ** {lock_V2 = <>} ;
|
||||||
|
|
||||||
mkAS v = v ** {lock_A = <>} ;
|
mkAS v = v ** {lock_A = <>} ;
|
||||||
mkA2S v p = mkA2 v p ** {lock_A = <>} ;
|
mkA2S v p = mkA2 v p ** {lock_A = <>} ;
|
||||||
@@ -624,4 +622,16 @@ reg3N = \vesi,veden,vesi
|
|||||||
|
|
||||||
regPN : Str -> PN ;
|
regPN : Str -> PN ;
|
||||||
|
|
||||||
|
mkV2 = overload {
|
||||||
|
mkV2 : Str -> V2 = \s -> dirV2 (regV s) ;
|
||||||
|
mkV2 : V -> V2 = dirV2 ;
|
||||||
|
mkV2 : V -> Case -> V2 = caseV2 ;
|
||||||
|
mkV2 : V -> Prep -> V2 = mk2V2 ;
|
||||||
|
} ;
|
||||||
|
|
||||||
|
dirV2 : V -> V2 ;
|
||||||
|
mk2V2 : V -> Prep -> V2 ;
|
||||||
|
caseV2 : V -> Case -> V2 ;
|
||||||
|
dirV2 : V -> V2 ;
|
||||||
|
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
Reference in New Issue
Block a user