summaryrefslogtreecommitdiff
path: root/next-lib/src/english/NounEng.gf
diff options
context:
space:
mode:
authorbjorn <bjorn@bringert.net>2008-10-30 14:09:27 +0000
committerbjorn <bjorn@bringert.net>2008-10-30 14:09:27 +0000
commita726630bb7db542d5f3893102e6561de7ccb1bb8 (patch)
treec651871af3562e743d2d82ca1ad2f503fc5c71d4 /next-lib/src/english/NounEng.gf
parentd4d94f6c23055bd7f7235f636353eb3534b7129d (diff)
Added case parameter for stand-alone forms of determiners. I had to move mkPron from ResEng to MorphoEng, and mkQuant from StructuralEng to MorphoEng. I also removed the unused mkPronoun stuff from MorphoEng.
Diffstat (limited to 'next-lib/src/english/NounEng.gf')
-rw-r--r--next-lib/src/english/NounEng.gf30
1 files changed, 15 insertions, 15 deletions
diff --git a/next-lib/src/english/NounEng.gf b/next-lib/src/english/NounEng.gf
index 9f7771e48..391fb782f 100644
--- a/next-lib/src/english/NounEng.gf
+++ b/next-lib/src/english/NounEng.gf
@@ -1,4 +1,4 @@
-concrete NounEng of Noun = CatEng ** open ResEng, Prelude in {
+concrete NounEng of Noun = CatEng ** open MorphoEng, ResEng, Prelude in {
flags optimize=all_subs ;
@@ -33,18 +33,18 @@ concrete NounEng of Noun = CatEng ** open ResEng, Prelude in {
DetQuant quant num = {
s = quant.s ! num.hasCard ! num.n ++ num.s ;
- sp = quant.sp ! num.hasCard ! num.n ++ num.s ;
+ sp = \\c => quant.sp ! num.hasCard ! num.n ! c ++ num.s ;
n = num.n
} ;
DetQuantOrd quant num ord = {
s = quant.s ! num.hasCard ! num.n ++ num.s ++ ord.s ;
- sp = quant.sp ! num.hasCard ! num.n ++ num.s ++ ord.s ;
+ sp = \\c => quant.sp ! num.hasCard ! num.n ! c ++ num.s ++ ord.s ;
n = num.n
} ;
DetNP det = {
- s = \\c => det.sp ; ---- case
+ s = det.sp ;
a = agrP3 det.n
} ;
@@ -70,23 +70,23 @@ concrete NounEng of Noun = CatEng ** open ResEng, Prelude in {
OrdSuperl a = {s = a.s ! AAdj Superl} ;
DefArt = {
- s = \\c,n => artDef ;
- sp = \\c,n => case <n,c> of {
- <Sg,False> => "it" ;
- <Pl,False> => "they" ;
- _ => artDef
+ s = \\hasCard,n => artDef ;
+ sp = \\hasCard,n => case <n,hasCard> of {
+ <Sg,False> => table { Gen => "its"; _ => "it" } ;
+ <Pl,False> => table { Nom => "they"; Acc => "them"; Gen => "theirs" } ;
+ _ => \\c => artDef
}
} ;
IndefArt = {
- s = \\c,n => case <n,c> of {
+ s = \\hasCard,n => case <n,hasCard> of {
<Sg,False> => artIndef ;
- _ => []
+ _ => []
} ;
- sp = \\c,n => case <n,c> of {
- <Sg,False> => "one" ;
- <Pl,False> => "ones" ;
- _ => []
+ sp = \\hasCard,n => case <n,hasCard> of {
+ <Sg,False> => table { Gen => "one's"; _ => "one" };
+ <Pl,False> => table { Gen => "ones'"; _ => "ones" } ;
+ _ => \\c => []
}
} ;