1
0
forked from GitHub/gf-core
Files
gf-core/lib/src/russian/SymbolRus.gf
Nick Frolov 342ba2e070 A tested version of Numerals
A bug is known in NP case agreement. The fix does not belong to this part of the resource grammar.
2011-12-14 16:22:43 +00:00

42 lines
1.1 KiB
Plaintext

--# -path=.:../abstract:../common
concrete SymbolRus of Symbol = CatRus ** open Prelude, ResRus in {
{- TODO! -}
lin
SymbPN i = {s = table {_ => i.s} ; g = Neut; anim = Inanimate } ;
IntPN i = {s = table {_ => i.s} ; g = Neut; anim = Inanimate } ;
FloatPN i = {s = table {_ => i.s} ; g = Neut; anim = Inanimate } ;
NumPN n = {s = table {_ => n.s ! Neut ! Nom} ; g = Neut; anim = Inanimate } ;
CNIntNP cn i = {s = \\cas => cn.s ! NF Sg (extCase cas) ++ i.s;
n = Sg ; p = P3 ;
g = PGen cn.g ; anim = cn.anim ; pron = False } ;
CNNumNP cn n = {s = \\cas => cn.s ! NF Sg (extCase cas)
++ n.s ! cn.g ! (extCase cas) ;
n = Sg ; p = P3 ;
g = PGen cn.g ; anim = cn.anim ; pron = False } ;
CNSymbNP d cn ss = {s = \\cas => cn.s ! NF Sg (extCase cas);
n = Sg ; p = P3 ;
g = PGen cn.g ; anim = cn.anim ; pron = False } ;
SymbS sy = sy ;
SymbNum sy = { s = \\_,_=>sy.s; n=Pl };
SymbOrd sy = { s = \\af => sy.s } ;
lincat
Symb, [Symb] = SS ;
lin
MkSymb s = s ;
BaseSymb = infixSS "и" ;
ConsSymb = infixSS "," ;
}