1
0
forked from GitHub/gf-rgl

Merge remote-tracking branch 'origin/master' into new-VPS2-extend

This commit is contained in:
Inari Listenmaa
2021-04-23 13:56:16 +08:00
45 changed files with 88815 additions and 88501 deletions

View File

@@ -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) ;

View File

@@ -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 ;

View File

@@ -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} ;