diff options
| author | aarne <aarne@cs.chalmers.se> | 2008-12-17 15:41:38 +0000 |
|---|---|---|
| committer | aarne <aarne@cs.chalmers.se> | 2008-12-17 15:41:38 +0000 |
| commit | 124738068a401b872369b8f4fb957bbdcd1bda87 (patch) | |
| tree | 1038c6c8d514a5f74ed81e7f46496104bf9385dc /next-lib/src/russian/SentenceRus.gf | |
| parent | cb44a12c1be3141f69e9bb9cfb4ae6abe7ac68eb (diff) | |
completed Russian grammar with missing syntax functions (marked ---- AR 17/12/2008); their effects should be checked
Diffstat (limited to 'next-lib/src/russian/SentenceRus.gf')
| -rw-r--r-- | next-lib/src/russian/SentenceRus.gf | 35 |
1 files changed, 25 insertions, 10 deletions
diff --git a/next-lib/src/russian/SentenceRus.gf b/next-lib/src/russian/SentenceRus.gf index cf2b64637..3b3dc8b70 100644 --- a/next-lib/src/russian/SentenceRus.gf +++ b/next-lib/src/russian/SentenceRus.gf @@ -37,16 +37,29 @@ concrete SentenceRus of Sentence = CatRus ** open Prelude, ResRus in { (sc.s ++ ne ++ vizhu ++ tebya) (sc.s ++ vizhu ++ ne ++ tebya) } ; -{- - SlashV2 ivan lubit = { s=\\b,clf => ivan.s ! PF Nom No NonPoss ++ - lubit.s! (getActVerbForm clf (pgen2gen ivan.g) ivan.n ivan.p) ; - s2=lubit.s2; c=lubit.c }; - - SlashVVV2 ivan khotet lubit = - { s=\\b,clf => ivan.s ! PF Nom No NonPoss ++ khotet.s! (getActVerbForm clf (pgen2gen ivan.g) ivan.n ivan.p) ++ lubit.s! VFORM Act VINF ; - s2=lubit.s2; - c=lubit.c }; --} + + + ---- AR 17/12/2008 + SlashVP Ya tebyaNeVizhu = { + s = \\b,clf => + let { + ya = Ya.s ! (case clf of { + ClInfinit => (mkPronForm Acc No NonPoss); + _ => (mkPronForm Nom No NonPoss) + }); + ne = case b of {Pos=>""; Neg=>"не"}; + vizhu = tebyaNeVizhu.s ! clf ! (pgNum Ya.a.g Ya.a.n)! Ya.a.p; + khorosho = tebyaNeVizhu.s2 ; + tebya = tebyaNeVizhu.s3 ! (pgen2gen Ya.a.g) ! Ya.a.n + } + in + if_then_else Str tebyaNeVizhu.negBefore + (ya ++ ne ++ vizhu ++ tebya ++ khorosho) + (ya ++ vizhu ++ ne ++ tebya ++ khorosho) ; + s2=tebyaNeVizhu.s2 ; + c=tebyaNeVizhu.c + } ; + AdvSlash slash adv = { s = \\b,clf => slash.s ! b ! clf ++ adv.s ; c = slash.c; @@ -110,6 +123,8 @@ concrete SentenceRus of Sentence = CatRus ** open Prelude, ResRus in { AdvS a s = {s = a.s ++ "," ++ s.s} ; ---- AR 19/6/2007 + ---- AR 17/12/2008 + RelS s r = {s = s.s ++ "," ++ r.s ! gennum Neut Sg ! Nom ! Inanimate} ; ---- ? } |
