forked from GitHub/gf-rgl
Define the param UseGen and make use of that
This commit is contained in:
@@ -11,11 +11,11 @@ concrete CatTur of Cat = CommonX ** open ResTur, Prelude in {
|
||||
NP = {s : Case => Str ; a : Agr} ;
|
||||
|
||||
Pron = ResTur.Pron ;
|
||||
Det = {s : Str; n : Number; useGen : Bool} ;
|
||||
Det = {s : Str; n : Number; useGen : UseGen} ;
|
||||
Num = {s : Number => Case => Str; n : Number} ;
|
||||
Card = {s : Number => Case => Str} ;
|
||||
Ord = {s : Number => Case => Str} ;
|
||||
Quant = {s : Str; useGen : Bool} ;
|
||||
Quant = {s : Str; useGen : UseGen} ;
|
||||
Prep = {s : Str; c : Case} ;
|
||||
|
||||
Numeral = {s : CardOrd => Number => Case => Str ; n : Number} ;
|
||||
|
||||
@@ -6,12 +6,18 @@ concrete NounTur of Noun = CatTur ** open ResTur, SuffixTur, HarmonyTur, Prelude
|
||||
|
||||
lin
|
||||
DetCN det cn = {
|
||||
s = \\c => det.s ++ cn.s ! det.n ! c ;
|
||||
s =
|
||||
case det.useGen of {
|
||||
NoGen => \\c => det.s ++ cn.s ! det.n ! c ;
|
||||
YesGen a => \\c => det.s ++ cn.gen ! det.n ! a
|
||||
} ;
|
||||
a = agrP3 det.n
|
||||
} ;
|
||||
|
||||
UsePron p = p ;
|
||||
|
||||
PossPron p = {s = []; useGen = YesGen p.a} ;
|
||||
|
||||
DetQuant quant num = {
|
||||
s = quant.s ++ num.s ! Sg ! Nom ;
|
||||
n = num.n;
|
||||
@@ -29,8 +35,8 @@ concrete NounTur of Noun = CatTur ** open ResTur, SuffixTur, HarmonyTur, Prelude
|
||||
OrdNumeral num = {s = \\c => num.s ! NOrd ! c} ;
|
||||
OrdSuperl a = {s = \\n,c => "en" ++ a.s ! n ! c} ;
|
||||
|
||||
DefArt = {s = []; useGen = False} ;
|
||||
IndefArt = {s = []; useGen = False} ;
|
||||
DefArt = {s = []; useGen = NoGen} ;
|
||||
IndefArt = {s = []; useGen = NoGen} ;
|
||||
|
||||
UseN n = n ;
|
||||
|
||||
|
||||
@@ -507,7 +507,7 @@ oper
|
||||
dat_Case : Prep = mkPrep [] Dat;
|
||||
acc_Case : Prep = mkPrep [] Dat;
|
||||
|
||||
mkQuant : Str -> Quant = \s -> lin Quant {s=s; useGen = False} ;
|
||||
mkQuant : Str -> Quant = \s -> lin Quant {s=s; useGen = NoGen} ;
|
||||
|
||||
param
|
||||
AoristType = PlSyl -- more than one syllable, takes -ir
|
||||
|
||||
@@ -34,6 +34,8 @@ resource ResTur = ParamX ** open Prelude, Predef, HarmonyTur in {
|
||||
| VInfinitive
|
||||
;
|
||||
|
||||
UseGen = NoGen | YesGen Agr;
|
||||
|
||||
oper
|
||||
Verb : Type = {
|
||||
s : VForm => Str
|
||||
|
||||
Reference in New Issue
Block a user