mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-25 02:38:55 -06:00
*** empty log message ***
This commit is contained in:
@@ -34,7 +34,7 @@ lincat
|
|||||||
-- = {s : Number => Case => Str; g : Gender; anim : Animacy} ;
|
-- = {s : Number => Case => Str; g : Gender; anim : Animacy} ;
|
||||||
NP = NounPhrase ;
|
NP = NounPhrase ;
|
||||||
-- = { s : PronForm => Str ; n : Number ; p : Person ;
|
-- = { s : PronForm => Str ; n : Number ; p : Person ;
|
||||||
-- g: Gender ; anim : Animacy ; pron: Bool} ;
|
-- g: PronGen ; anim : Animacy ; pron: Bool} ;
|
||||||
PN = ProperName ;
|
PN = ProperName ;
|
||||||
-- = {s : Case => Str ; g : Gender ; anim : Animacy} ;
|
-- = {s : Case => Str ; g : Gender ; anim : Animacy} ;
|
||||||
Adj1 = Adjective ;
|
Adj1 = Adjective ;
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ WantVV = extVerb verbKhotet Act Present ;
|
|||||||
|
|
||||||
AndConj = ss "и" ** {n = Pl} ;
|
AndConj = ss "и" ** {n = Pl} ;
|
||||||
OrConj = ss "или" ** {n = Sg} ;
|
OrConj = ss "или" ** {n = Sg} ;
|
||||||
BothAnd = sd2 "как" [", так"] ** {n = Pl} ;
|
BothAnd = sd2 "как" [", так и"] ** {n = Pl} ;
|
||||||
EitherOr = sd2 "либо" [", либо"] ** {n = Sg} ;
|
EitherOr = sd2 "либо" [", либо"] ** {n = Sg} ;
|
||||||
-- comma is not visible in GUI!
|
-- comma is not visible in GUI!
|
||||||
|
|
||||||
@@ -97,8 +97,8 @@ WantVV = extVerb verbKhotet Act Present ;
|
|||||||
WhenSubj = ss "когда" ;
|
WhenSubj = ss "когда" ;
|
||||||
AlthoughSubj = ss "хотя" ;
|
AlthoughSubj = ss "хотя" ;
|
||||||
|
|
||||||
PhrYes = ss ["да ."] ;
|
PhrYes = ss ["Да ."] ;
|
||||||
PhrNo = ss ["нет ."] ;
|
PhrNo = ss ["Нет ."] ;
|
||||||
|
|
||||||
EverywhereNP = ss "везде" ;
|
EverywhereNP = ss "везде" ;
|
||||||
SomewhereNP = ss "где-нибудь" ;
|
SomewhereNP = ss "где-нибудь" ;
|
||||||
|
|||||||
@@ -69,14 +69,7 @@ oper
|
|||||||
}
|
}
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- A function specific for Russian for setting the gender for
|
mkNounPhrase : Number -> CommNounPhrase -> NounPhrase = \n,chelovek ->
|
||||||
-- personal pronouns in first and second person, singular :
|
|
||||||
setNPGender : Gender -> NounPhrase -> NounPhrase = \gen, pronI ->
|
|
||||||
{ s = pronI.s ; g = PGen gen; anim = pronI.anim ;
|
|
||||||
n = pronI.n ; nComp = pronI.nComp ; p = pronI.p ; pron = pronI.pron } ;
|
|
||||||
|
|
||||||
|
|
||||||
mkNounPhrase : Number -> CommNounPhrase -> NounPhrase = \n,chelovek ->
|
|
||||||
{s = \\cas => chelovek.s ! n ! (extCase cas) ;
|
{s = \\cas => chelovek.s ! n ! (extCase cas) ;
|
||||||
n = n ; g = PGen chelovek.g ; p = P3 ; pron =False ;
|
n = n ; g = PGen chelovek.g ; p = P3 ; pron =False ;
|
||||||
anim = chelovek.anim
|
anim = chelovek.anim
|
||||||
@@ -489,18 +482,6 @@ let {n = ivan.n ; nf = if_then_else Number coll Sg n} in
|
|||||||
w = Act
|
w = Act
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- A function specific for Russian :
|
|
||||||
predNeedShortAdjective: Bool -> NounPhrase -> CommNounPhrase -> Sentence =
|
|
||||||
\ b, Jag, Dig -> { s =
|
|
||||||
let {
|
|
||||||
mne = Jag.s ! (mkPronForm Dat No NonPoss) ;
|
|
||||||
nuzhen = need.s ! AF Nom Inanimate (gNum Dig.g Sg) ;
|
|
||||||
doctor = Dig.s ! Sg ! Nom ;
|
|
||||||
ne = negation b
|
|
||||||
} in
|
|
||||||
mne ++ ne ++ nuzhen ++ doctor
|
|
||||||
} ;
|
|
||||||
|
|
||||||
-- Two-place functions add one argument place.
|
-- Two-place functions add one argument place.
|
||||||
|
|
||||||
Function2 = Function ** {s3 : Str; c2: Case} ;
|
Function2 = Function ** {s3 : Str; c2: Case} ;
|
||||||
@@ -596,20 +577,7 @@ oper
|
|||||||
|
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- A function specific for Russian:
|
-- This is a macro for simultaneous predication and complementation.
|
||||||
U_predTransVerb : Bool -> TransVerb -> NounPhrase -> NounPhrase -> Sentence =
|
|
||||||
\b,Ser,Jag,Dig -> { s =
|
|
||||||
let {
|
|
||||||
menya = Jag.s ! (mkPronForm Gen Yes NonPoss) ;
|
|
||||||
bolit = Ser.s ! VFin (gNum (pgen2gen Dig.g) Dig.n) Dig.p ;
|
|
||||||
golova = Dig.s ! (mkPronForm Nom No NonPoss) ;
|
|
||||||
ne = negation b
|
|
||||||
} in
|
|
||||||
"у" ++ menya ++ ne ++ bolit ++ golova
|
|
||||||
} ;
|
|
||||||
|
|
||||||
|
|
||||||
-- This is a macro for simultaneous predication and complementation.
|
|
||||||
|
|
||||||
predTransVerb : Bool -> TransVerb -> NounPhrase -> NounPhrase -> Sentence =
|
predTransVerb : Bool -> TransVerb -> NounPhrase -> NounPhrase -> Sentence =
|
||||||
\b,vizhu,ya,tu -> predVerbPhrase ya (predVerbGroup b (complTransVerb vizhu tu)) ;
|
\b,vizhu,ya,tu -> predVerbPhrase ya (predVerbGroup b (complTransVerb vizhu tu)) ;
|
||||||
|
|||||||
Reference in New Issue
Block a user