Quant with variable number

This commit is contained in:
aarne
2006-02-02 15:23:43 +00:00
parent 478d1f4435
commit f5f3ba0e42
19 changed files with 142 additions and 114 deletions

View File

@@ -51,6 +51,7 @@ concrete CatEng of Cat = TenseX ** open ResEng, Prelude in {
NP, Pron = {s : Case => Str ; a : Agr} ;
Det = {s : Str ; n : Number} ;
Predet, QuantSg, QuantPl, Num, Ord = {s : Str} ;
Quant = {s : Number => Str} ;
-- Adverb

View File

@@ -25,8 +25,10 @@ concrete NounEng of Noun = CatEng ** open ResEng, Prelude in {
n = Pl
} ;
PossSg p = {s = p.s ! Gen} ;
PossPl p = {s = p.s ! Gen} ;
SgQuant quant = {s = quant.s ! Sg} ;
PlQuant quant = {s = quant.s ! Pl} ;
PossPron p = {s = \\_ => p.s ! Gen} ;
NoNum, NoOrd = {s = []} ;
@@ -40,11 +42,14 @@ concrete NounEng of Noun = CatEng ** open ResEng, Prelude in {
OrdSuperl a = {s = a.s ! AAdj Superl} ;
DefSg = {s = artDef ; n = Sg} ;
DefPl = {s = artDef ; n = Pl} ;
DefArt = {s = \\_ => artDef} ;
IndefSg = {s = artIndef ; n = Sg} ;
IndefPl = {s = [] ; n = Pl} ;
IndefArt = {
s = table {
Sg => artIndef ;
Pl => []
}
} ;
MassDet = {s = [] ; n = Sg} ;

View File

@@ -63,19 +63,16 @@ concrete StructuralEng of Structural = CatEng **
somePl_Det = mkDeterminer Pl "some" ;
something_NP = regNP "something" Sg ;
somewhere_Adv = ss "somewhere" ;
that_Quant = mkDeterminer Sg "that" ;
that_Quant = mkQuant "that" "those" ;
that_NP = regNP "that" Sg ;
there_Adv = ss "there" ;
there7to_Adv = ss "there" ;
there7from_Adv = ss ["from there"] ;
therefore_PConj = ss "therefore" ;
these_NP = regNP "these" Pl ;
these_Quant = mkDeterminer Pl "these" ;
they_Pron = mkNP "they" "them" "their" Pl P3 ;
this_Quant = mkDeterminer Sg "this" ;
this_Quant = mkQuant "this" "these" ;
this_NP = regNP "this" Sg ;
those_NP = regNP "those" Pl ;
those_Quant = mkDeterminer Pl "those" ;
through_Prep = ss "through" ;
too_AdA = ss "too" ;
to_Prep = ss "to" ;
@@ -100,5 +97,10 @@ concrete StructuralEng of Structural = CatEng **
youPl_Pron = mkNP "you" "you" "your" Pl P2 ;
youPol_Pron = mkNP "you" "you" "your" Sg P2 ;
oper
mkQuant : Str -> Str -> {s : Number => Str} = \x,y -> {
s = table Number [x ; y]
} ;
}