1
0
forked from GitHub/gf-core

VPS and conjunction in Romance, by means of repeated unstressed pronouns (in Fre) or prodrop (other languages)

This commit is contained in:
aarne
2012-05-27 20:50:59 +00:00
parent ccf7ba8510
commit fa4ccf176a
8 changed files with 51 additions and 1 deletions

View File

@@ -178,4 +178,6 @@ oper
verbBeschH : Verbum -> Verb = \v -> verbBesch v ** {vtyp = VHabere} ;
subjPron = \_ -> [] ;
}

View File

@@ -225,4 +225,15 @@ instance DiffFre of DiffRomance = open CommonRomance, PhonoFre, Prelude in {
datClit = "y" ;
genClit = "en" ;
subjPron = \a -> case a of {
{n = Sg ; p = P1} => "je" ;
{n = Sg ; p = P2} => "tu" ;
{n = Pl ; p = P1} => "nous" ;
{n = Pl ; p = P2} => "vous" ;
{n = Sg ; p = P3 ; g = Masc} => "il" ;
{n = Sg ; p = P3 ; g = Fem} => "elle" ;
{n = Pl ; p = P3 ; g = Masc} => "ils" ;
{n = Pl ; p = P3 ; g = Fem} => "elles"
} ;
}

View File

@@ -203,5 +203,6 @@ instance DiffIta of DiffRomance = open CommonRomance, PhonoIta, BeschIta, Prelud
datClit = "ci" ;
genClit = "ne" ;
subjPron = \_ -> [] ;
}

View File

@@ -11,7 +11,7 @@ concrete GrammarIta of Grammar =
RelativeIta,
ConjunctionIta,
PhraseIta,
TextX - [SC,Temp,Tense,Pol,PPos,PNeg],
TextX - [SC,Temp,Tense,Pol,PPos,PNeg,TPres,TPast,TFut,TCond],
IdiomIta,
StructuralIta,
TenseIta

View File

@@ -116,6 +116,10 @@ oper
ext : RPolarity => Str ; -- que je dors / que je dorme
} ;
-- The pronoun to be repeated in $VPS$ coordination, and also in Fre inverted questions.
-- Empty in other languages than Fre (as a kind of prodrop).
subjPron : Agr -> Str ;
--2 Workarounds, to be eliminated

View File

@@ -37,4 +37,33 @@ incomplete concrete ExtraRomance of ExtraRomanceAbs = CatRomance **
PrepCN prep cn = {s = prep.s ++ prepCase prep.c ++ cn.s ! Sg} ;
lincat
VPS = {s : Mood => Agr => Bool => Str} ;
[VPS] = {s1,s2 : Mood => Agr => Bool => Str} ;
lin
BaseVPS x y = {
s1 = \\m,a,b => x.s ! m ! a ! b ;
s2 = \\m,a,b => subjPron a ++ y.s ! m ! a ! b
} ;
ConsVPS x y = {
s1 = \\m,a,b => x.s ! m ! a ! b ;
s2 = \\m,a,b => subjPron a ++ y.s1 ! m ! a ! b ++ y.s2 ! m ! a ! b
} ;
PredVPS np vpi = {
s = \\m => (np.s ! Nom).comp ++ vpi.s ! m ! np.a ! np.isNeg
} ;
MkVPS tm p vp = {
s = \\m,agr,isNeg =>
tm.s ++ p.s ++
(mkClausePol (orB isNeg vp.isNeg) [] False False agr vp).s
! DDir ! tm.t ! tm.a ! p.p ! m
} ;
ConjVPS = conjunctDistrTable3 Mood Agr Bool ;
}

View File

@@ -1,5 +1,7 @@
abstract ExtraRomanceAbs = Cat, Extra[
VPI,ListVPI,BaseVPI,ConsVPI,MkVPI,ComplVPIVV,ConjVPI,
VPS,ListVPS,BaseVPS,ConsVPS,ConjVPS,MkVPS,PredVPS,
Temp,Pol,S,NP,
VV,VP,Conj,Pron,ProDrop,CompIQuant,IQuant,IComp,PrepCN,CN,Prep,Adv] ** {
fun

View File

@@ -180,4 +180,5 @@ instance DiffSpa of DiffRomance = open CommonRomance, PhonoSpa, BeschSpa, Prelud
verbBeschH : Verbum -> Verb = \v -> verbBesch v ** {vtyp = VHabere} ;
subjPron = \_ -> [] ;
}