DAP, Det with AP and its conjunction, in Eng and Scand ; not quite sure if this is possible in all languages

This commit is contained in:
aarne
2014-06-12 13:55:39 +00:00
parent 20f8f16201
commit 7265c2f07d
11 changed files with 44 additions and 2 deletions

View File

@@ -75,6 +75,7 @@ concrete CatEng of Cat = CommonX - [Pol] ** open ResEng, Prelude in {
Num = {s : Case => Str ; n : Number ; hasCard : Bool} ;
Card = {s : Case => Str ; n : Number} ;
Quant = {s : Bool => Number => Str ; sp : Bool => Number => NPCase => Str} ;
DAP = {s : Str ; n : Number} ;
-- Numeral

View File

@@ -26,6 +26,8 @@ concrete ConjunctionEng of Conjunction =
ConjCN co ns = conjunctDistrTable2 Number Case co ns ** {g = Neutr} ; --- gender?
ConjDet c xs = let cxs = (conjunctDistrSS c xs).s in {s = cxs ; sp = \\_ => cxs ++ "one" ; hasNum = False ; n = xs.n} ;
-- These fun's are generated from the list cat's.
BaseS = twoSS ;
@@ -44,6 +46,8 @@ concrete ConjunctionEng of Conjunction =
ConsIAdv = consrSS comma ;
BaseCN = twoTable2 Number Case ;
ConsCN = consrTable2 Number Case comma ;
BaseDAP x y = twoSS x y ** {n = y.n} ; --- the last number decides: one big and two small cars
ConsDAP x xs = consrSS comma x xs ** {n = xs.n} ;
lincat
[S] = {s1,s2 : Str} ;
@@ -54,5 +58,7 @@ concrete ConjunctionEng of Conjunction =
[AP] = {s1,s2 : Agr => Str ; isPre : Bool} ;
[RS] = {s1,s2 : Agr => Str ; c : NPCase} ;
[CN] = {s1,s2 : Number => Case => Str} ;
[DAP] = {s1,s2 : Str ; n : Number} ;
}

View File

@@ -152,4 +152,11 @@ concrete NounEng of Noun = CatEng ** open MorphoEng, ResEng, Prelude in {
a = agrP3 det.n
} ;
AdjDAP det ap = {
s = det.s ++ ap.s ! agrgP3 det.n Masc ; --- post-ap's ? "this larger than life (movie)"
n = det.n ;
} ;
DetDAP d = d ; -- forgetting sp and hasNumber
}