diff --git a/grammars/resource/russian/Syntax.gf b/grammars/resource/russian/Syntax.gf index 4b43f39e3..11b325bfc 100644 --- a/grammars/resource/russian/Syntax.gf +++ b/grammars/resource/russian/Syntax.gf @@ -311,7 +311,7 @@ oper complementOfTransVerb : TransVerb -> Complement = \v -> {s2 = v.s2 ; c = v.c} ; verbOfTransVerb : TransVerb -> Verb = \v -> - {s = v.s; t = v.t; a = v.a ; v = v.v } ; + {s = v.s; t = v.t; a = v.a ; w = v.w } ; mkTransVerb : Verb -> Preposition -> Case -> TransVerb = \v,p,cas -> v ** {s2 = p ; c = cas } ; @@ -324,7 +324,7 @@ oper -- The rule for using transitive verbs is the complementization rule: complTransVerb : Bool -> TransVerb -> NounPhrase -> VerbPhrase = \b,se,tu -> - {s = se.s ; a = se.a ; t = se.t ; v = se.v ; s2 = negation b ; + {s = se.s ; a = se.a ; t = se.t ; w = se.w ; s2 = negation b ; s3 = \\_,_ => se.s2 ++ tu.s ! (mkPronForm se.c No NonPoss) ; negBefore = True } ; @@ -353,7 +353,7 @@ oper -- Sometimes we want to extract the verb part of a verb phrase. verbOfPhrase : VerbPhrase -> Verb = \v -> - {s = v.s; t = v.t ; a = v.a ; v =v.v} ; + {s = v.s; t = v.t ; a = v.a ; w =v.w} ; -- Verb phrases can also be formed from adjectives ("- молод"), @@ -367,7 +367,7 @@ oper { s= \\_ => "-" ; t = Present ; a = Imperfective ; - v = Act ; + w = Act ; s2 = negation b ; s3 = \\g,n => case n of { Sg => zloj.s ! AF Nom Animate (ASg g) ; @@ -380,7 +380,7 @@ oper { s= \\_ => "-" ; t = Present ; a = Imperfective ; - v = Act ; + w = Act ; s2 = negation b ; s3 = \\_,n => (indefNounPhrase n chelovek ).s ! (mkPronForm Nom No NonPoss) ; negBefore = False @@ -390,7 +390,7 @@ oper { s= \\_ => "-" ; t = Present ; a = Imperfective ; - v = Act ; + w = Act ; s2 = negation b ; s3 = \\_,_ => masha.s ! (mkPronForm Nom No NonPoss) ; negBefore = False @@ -412,7 +412,7 @@ oper -- adVerbPhrase : VerbPhrase -> Adverb -> VerbPhrase = \poet, khorosho -> {s = \\vf => khorosho.s ++ poet.s ! vf ; s2 = poet.s2; s3 = poet.s3; - a = poet.a; v = poet.v; t = poet.t ; negBefore = poet.negBefore } ; + a = poet.a; w = poet.w; t = poet.t ; negBefore = poet.negBefore } ; -- Adverbials are typically generated by prefixing prepositions. -- The rule for creating locative noun phrases by the preposition "в" @@ -488,7 +488,7 @@ oper \b,vidit,tuUlubaeshsya -> {s = vidit.s ; s2 = negation b ; s3 = \\_,_ => [", что"] ++ tuUlubaeshsya.s ; - t = vidit.t ; v = vidit.v ; a = vidit.a ; negBefore = True } ; + t = vidit.t ; w = vidit.w ; a = vidit.a ; negBefore = True } ; --2 Sentences missing noun phrases diff --git a/grammars/resource/russian/TestRus.gf b/grammars/resource/russian/TestRus.gf index f3d2a5cb4..4a160afbe 100644 --- a/grammars/resource/russian/TestRus.gf +++ b/grammars/resource/russian/TestRus.gf @@ -14,6 +14,14 @@ lin Small = malenkij ; Old = staruj ; Young = molodoj ; + + --Connection = cnNoHum (nounReg "connection") ** {s2 = "from" ; s3 = "to"} ; Fun2 + -- American = adj1Malenkij "американск" ; + -- Finnish = adj1Malenkij "финск" ; + -- Married = adjInvar "замужем" ** {s2 = "за"; c = instructive} ; + --Give = mkDitransVerb (verbNoPart (mkVerb "give" "gave" "given")) [] [] ; V3 + --Prefer = mkDitransVerb (mkVerb "prefer" "preferred" "preferred")) [] "to" ; V3 + Man = muzhchina ; Woman = zhenchina ; Car = mashina ; diff --git a/grammars/resource/russian/Types.gf b/grammars/resource/russian/Types.gf index 64ed69e66..b9da5f4e3 100644 --- a/grammars/resource/russian/Types.gf +++ b/grammars/resource/russian/Types.gf @@ -240,7 +240,7 @@ param VF = VFin GenNum Person | VImper Number Person | VInf | VSubj GenNum; oper - Verb : Type = {s : VF => Str ; t: Tense ; a : Aspect ; v: Voice} ; + Verb : Type = {s : VF => Str ; t: Tense ; a : Aspect ; w: Voice} ; extVerb : Verbum -> Voice -> Tense -> Verb = \aller, vox, t -> { s = table { @@ -251,7 +251,7 @@ oper VImper n p => aller.s ! VFORM vox (VIMP n p) ; VInf => aller.s ! VFORM vox VINF ; VSubj gn => aller.s ! VFORM vox (VSUB gn) - }; t = t ; a = aller.asp ; v = vox } ; + }; t = t ; a = aller.asp ; w = vox } ; --3 Other open classes