forked from GitHub/gf-rgl
Merge remote-tracking branch 'origin/master' into new-VPS2-extend
This commit is contained in:
@@ -24,6 +24,20 @@ lin
|
||||
)
|
||||
} ;
|
||||
|
||||
InflectionPN = \pn -> {
|
||||
t = "pn" ;
|
||||
s1 = heading1 ("Proper Name" ++
|
||||
case pn.g of {
|
||||
Neutr => "";
|
||||
Masc => "(masc)";
|
||||
Fem => "(fem)"
|
||||
}) ;
|
||||
s2 = frameTable (
|
||||
tr (th "nom" ++ th "gen") ++
|
||||
tr (td (pn.s ! Nom) ++ td (pn.s ! Gen))
|
||||
)
|
||||
} ;
|
||||
|
||||
InflectionA, InflectionA2 = \adj -> {
|
||||
t = "a" ;
|
||||
s1 = heading1 "Adjective" ;
|
||||
@@ -37,7 +51,7 @@ lin
|
||||
paragraph (adj.s ! AAdv)
|
||||
} ;
|
||||
|
||||
InflectionAdv = \adv -> {
|
||||
InflectionAdv, InflectionAdV, InflectionAdA, InflectionAdN = \adv -> {
|
||||
t = "adv" ;
|
||||
s1= heading1 "Adverb" ;
|
||||
s2= paragraph (adv.s) ;
|
||||
|
||||
@@ -189,6 +189,20 @@ concrete ExtendEng of Extend =
|
||||
}
|
||||
} ;
|
||||
|
||||
-- Conjunction of copula complements
|
||||
|
||||
lincat [Comp] = {s1,s2 : Agr => Str} ;
|
||||
lin BaseComp x y = twoTable Agr x y ;
|
||||
ConsComp xs x = consrTable Agr comma xs x ;
|
||||
ConjComp conj ss = conjunctDistrTable Agr conj ss ;
|
||||
|
||||
-- Conjunction of imperatives
|
||||
|
||||
lincat ListImp = {s1,s2 : CPolarity => ImpForm => Str} ;
|
||||
lin BaseImp = twoTable2 CPolarity ImpForm ;
|
||||
ConsImp = consrTable2 CPolarity ImpForm comma ;
|
||||
ConjImp conj ss = conjunctDistrTable2 CPolarity ImpForm conj ss ;
|
||||
|
||||
-----
|
||||
|
||||
lin
|
||||
@@ -386,6 +400,17 @@ concrete ExtendEng of Extend =
|
||||
ReflPoss num cn = {s = \\a => possPron ! a ++ num.s ! True ! Nom ++ cn.s ! num.n ! Nom} ;
|
||||
PredetRNP predet rnp = {s = \\a => predet.s ++ rnp.s ! a} ;
|
||||
|
||||
AdvRNP np prep rnp = {s = \\a => np.s ! NPAcc ++ prep.s ++ rnp.s ! a} ;
|
||||
AdvRVP vp prep rnp = insertObj (\\a => prep.s ++ rnp.s ! a) vp ;
|
||||
AdvRAP ap prep rnp = {s = \\a => ap.s ! a ++ prep.s ++ rnp.s ! a ; isPre = False} ;
|
||||
|
||||
ReflA2RNP a rnp = {
|
||||
s = \\ag => a.s ! AAdj Posit Nom ++ a.c2 ++ rnp.s ! ag ;
|
||||
isPre = False
|
||||
} ;
|
||||
|
||||
PossPronRNP pron num cn rnp = DetCN (DetQuant (PossPron pron) num) (PossNP cn (lin NP {s = \\_ => rnp.s ! pron.a; a = pron.a})) ;
|
||||
|
||||
ConjRNP conj rpns = conjunctDistrTable Agr conj rpns ;
|
||||
|
||||
Base_rr_RNP x y = twoTable Agr x y ;
|
||||
|
||||
@@ -22,6 +22,10 @@ concrete SentenceEng of Sentence = CatEng ** open Prelude, ResEng in {
|
||||
dont ++ verb
|
||||
} ;
|
||||
|
||||
AdvImp adv imp = {
|
||||
s = \\pol,impform => adv.s ++ imp.s ! pol ! impform
|
||||
} ;
|
||||
|
||||
SlashVP np vp =
|
||||
mkClause (np.s ! npNom) np.a vp ** {c2 = vp.c2} ;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user