forked from GitHub/gf-core
some fixes to Wanjiku's list
This commit is contained in:
@@ -85,7 +85,7 @@ lin
|
|||||||
girl_N = regN "girl" ;
|
girl_N = regN "girl" ;
|
||||||
glove_N = regN "glove" ;
|
glove_N = regN "glove" ;
|
||||||
gold_N = regN "gold" ;
|
gold_N = regN "gold" ;
|
||||||
good_ADeg = mkADeg "good" "better" "best" "well" ;
|
good_ADeg = mkADeg "good" "well" "better" "best" ;
|
||||||
go_V = (mkV "go" "goes" "went" "gone" "going") ;
|
go_V = (mkV "go" "goes" "went" "gone" "going") ;
|
||||||
green_ADeg = regADeg "green" ;
|
green_ADeg = regADeg "green" ;
|
||||||
harbour_N = regN "harbour" ;
|
harbour_N = regN "harbour" ;
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ lin
|
|||||||
dog_N = nLukko "koira" ;
|
dog_N = nLukko "koira" ;
|
||||||
door_N = nArpi "ovi" ;
|
door_N = nArpi "ovi" ;
|
||||||
drink_V2 = dirV2 (regV "juoda") ;
|
drink_V2 = dirV2 (regV "juoda") ;
|
||||||
easy_A2V = mkA2V (mkA2 (mkA (nLukko "helppo")) allative) ;
|
easy_A2V = mkA2V (mkA2 (mkA (nLukko "helppo")) (caseP allative)) ;
|
||||||
eat_V2 = dirV2 (regV "syödä") ;
|
eat_V2 = dirV2 (regV "syödä") ;
|
||||||
empty_ADeg = mkADeg (nLukko "tyhjä") "tyhjempi" "tyhjin" ;
|
empty_ADeg = mkADeg (nLukko "tyhjä") "tyhjempi" "tyhjin" ;
|
||||||
enemy_N = regN "vihollinen" ;
|
enemy_N = regN "vihollinen" ;
|
||||||
@@ -122,7 +122,7 @@ lin
|
|||||||
love_V2 = caseV2 (regV "rakastaa") partitive ;
|
love_V2 = caseV2 (regV "rakastaa") partitive ;
|
||||||
man_N = mkN "mies" "miehen" "miehenä" "miestä" "mieheen"
|
man_N = mkN "mies" "miehen" "miehenä" "miestä" "mieheen"
|
||||||
"miehinä" "miehissä" "miesten" "miehiä" "miehiin" human ;
|
"miehinä" "miehissä" "miesten" "miehiä" "miehiin" human ;
|
||||||
---- married_A2 = mkA2 (regA "married") "to" ;
|
married_A2 = mkA2 (mkA (regN "avioitunut")) (postpP genitive "kanssa") ;
|
||||||
meat_N = nLukko "liha" ;
|
meat_N = nLukko "liha" ;
|
||||||
milk_N = nLukko "maito" ;
|
milk_N = nLukko "maito" ;
|
||||||
moon_N = regN "kuu" ;
|
moon_N = regN "kuu" ;
|
||||||
|
|||||||
@@ -37,13 +37,13 @@ lincat
|
|||||||
|
|
||||||
A = Adjective ;
|
A = Adjective ;
|
||||||
-- = CommonNoun ;
|
-- = CommonNoun ;
|
||||||
A2 = Adjective ** {c : ComplCase} ;
|
A2 = Adjective ** {s3 : Str ; p : Bool ; c : ComplCase} ;
|
||||||
ADeg = {s : Degree => AForm => Str} ;
|
ADeg = {s : Degree => AForm => Str} ;
|
||||||
AP = {s : AdjPos => AForm => Str} ;
|
AP = {s : AdjPos => AForm => Str} ;
|
||||||
AS = Adjective ; --- "more difficult for him to come than..."
|
AS = Adjective ; --- "more difficult for him to come than..."
|
||||||
A2S = Adjective ** {c : ComplCase} ;
|
A2S = Adjective ** {s3 : Str ; p : Bool ; c : ComplCase} ;
|
||||||
AV = Adjective ;
|
AV = Adjective ;
|
||||||
A2V = Adjective ** {c : ComplCase} ;
|
A2V = Adjective ** {s3 : Str ; p : Bool ; c : ComplCase} ;
|
||||||
|
|
||||||
V = Verb1 ;
|
V = Verb1 ;
|
||||||
-- = {s : VForm => Str}
|
-- = {s : VForm => Str}
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ oper
|
|||||||
human : Gender ;
|
human : Gender ;
|
||||||
nonhuman : Gender ;
|
nonhuman : Gender ;
|
||||||
|
|
||||||
Number : Type;
|
Number : Type ;
|
||||||
|
|
||||||
singular : Number ;
|
singular : Number ;
|
||||||
plural : Number ;
|
plural : Number ;
|
||||||
@@ -214,7 +214,7 @@ oper
|
|||||||
|
|
||||||
-- Two-place adjectives need a case for the second argument.
|
-- Two-place adjectives need a case for the second argument.
|
||||||
|
|
||||||
mkA2 : A -> Case -> A2 ;
|
mkA2 : A -> PPosition -> A2 ;
|
||||||
|
|
||||||
-- Comparison adjectives have three forms. The comparative and the superlative
|
-- Comparison adjectives have three forms. The comparative and the superlative
|
||||||
-- are always inflected in the same way, so the nominative of them is actually
|
-- are always inflected in the same way, so the nominative of them is actually
|
||||||
@@ -482,7 +482,7 @@ reg3N = \vesi,veden,vesi
|
|||||||
mkPN n = mkProperName n ** {lock_PN = <>} ;
|
mkPN n = mkProperName n ** {lock_PN = <>} ;
|
||||||
|
|
||||||
mkA = \x -> noun2adj x ** {lock_A = <>} ;
|
mkA = \x -> noun2adj x ** {lock_A = <>} ;
|
||||||
mkA2 = \x,c -> x ** {c = CCase c ; lock_A2 = <>} ;
|
mkA2 = \x,c -> x ** {s3 = c.s3 ; p = c.p ; c = c.c ; lock_A2 = <>} ;
|
||||||
mkADeg x kivempi kivin =
|
mkADeg x kivempi kivin =
|
||||||
let
|
let
|
||||||
a = last (x.s ! ((NCase Sg Part))) ; ---- gives "kivinta"
|
a = last (x.s ! ((NCase Sg Part))) ; ---- gives "kivinta"
|
||||||
|
|||||||
@@ -366,23 +366,23 @@ oper
|
|||||||
-- The order of the adjective and its argument depends on the case: the local
|
-- The order of the adjective and its argument depends on the case: the local
|
||||||
-- cases favour Adj + Noun in the predicative position ("hyvä painissa",
|
-- cases favour Adj + Noun in the predicative position ("hyvä painissa",
|
||||||
-- "tyytyväinen vaalitulokseen", "jaollinen kolmella"), which is not a possible
|
-- "tyytyväinen vaalitulokseen", "jaollinen kolmella"), which is not a possible
|
||||||
-- order for the accusative case.
|
-- order for the accusative case. A preposition seems not to seem affect
|
||||||
|
-- the rule: ("yhtäsuuri kuin sinä", "sinua vastaan suunnattu").
|
||||||
|
|
||||||
AdjCompl = Adjective ** {c : ComplCase} ;
|
|
||||||
|
|
||||||
--- Only the middle argument of $complCase$ matters, since
|
AdjCompl = Adjective ** {s3 : Str ; p : Bool ; c : ComplCase} ;
|
||||||
--- no accusatives come into question.
|
|
||||||
|
|
||||||
complAdj : AdjCompl -> NounPhrase -> AdjPhrase = \hyva,paini ->
|
complAdj : AdjCompl -> NounPhrase -> AdjPhrase = \hyva,paini ->
|
||||||
let
|
let
|
||||||
hyvat : AForm => Str = \\a => hyva.s ! a ;
|
hyvat : AForm => Str = \\a => hyva.s ! a ;
|
||||||
c : NPForm = complCase True hyva.c (SVI VIInf3Iness) ;
|
c : NPForm = complCase True hyva.c (SVI VIInf3Iness) ;
|
||||||
painissa : Str = paini.s ! c
|
painissa : Str = pPosit hyva.s3 hyva.p (paini.s ! c) ;
|
||||||
|
haspp : Bool = notB (isNil hyva.s3)
|
||||||
in
|
in
|
||||||
{s = table {
|
{s = table {
|
||||||
AAttr => \\a => painissa ++ hyvat ! a ;
|
AAttr => \\a => painissa ++ hyvat ! a ;
|
||||||
APred => \\a => if_then_else Str
|
APred => \\a => if_then_else Str
|
||||||
(isLocalNPForm c)
|
(orB (isLocalNPForm c) haspp)
|
||||||
(hyvat ! a ++ painissa)
|
(hyvat ! a ++ painissa)
|
||||||
(painissa ++ hyvat ! a)
|
(painissa ++ hyvat ! a)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -374,7 +374,7 @@ oper
|
|||||||
|
|
||||||
superlAdjPhrase : AdjDegr -> AdjPhrase = \ung ->
|
superlAdjPhrase : AdjDegr -> AdjPhrase = \ung ->
|
||||||
{s = \\a,c => ung.s ! AF (Super SupWeak) c ;
|
{s = \\a,c => ung.s ! AF (Super SupWeak) c ;
|
||||||
p = True
|
p = False
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
{-
|
{-
|
||||||
|
|||||||
Reference in New Issue
Block a user