blob: 0db3c76160906a66d6433c7e5a3a31b37dac0855 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
-- use this path to read the grammar from the same directory
--# -path=.:../../lib/resource-0.6/abstract:../../lib/prelude:../../lib/resource-0.6/russian
--1 Functions that are not in the API, but common in Russian
--
-- Aarne Ranta, Janna Khegai 2003
resource ExtraRus = open PredicationRus, ResourceRus, ParadigmsRus, SyntaxRus in {
flags coding=utf8 ;
oper
predNeedShortAdjective: Bool -> NP -> NP -> S = \b, Jag, Dig -> { s =
let {
mne = Jag.s ! (mkPronForm Dat No NonPoss) ;
nuzhen = need.s ! AF Nom Inanimate (gNum (pgen2gen Dig.g) Dig.n) ;
doctor = Dig.s ! (mkPronForm Nom No NonPoss) ;
ne = negation b
} in
mne ++ ne ++ nuzhen ++ doctor ;
lock_S = <>
} ;
U_predTransVerb : Bool -> TV -> NP -> NP -> S =
\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 ;
lock_S = <>
} ;
tvHave : TV = mkDirectVerb (extVerb have active present) ** { lock_TV = <>};
};
|