Skip to content

Commit

Permalink
added VPS functions to Romance Extend modules
Browse files Browse the repository at this point in the history
  • Loading branch information
aarneranta committed Jul 26, 2024
1 parent afe544b commit 78fc625
Show file tree
Hide file tree
Showing 5 changed files with 107 additions and 6 deletions.
35 changes: 33 additions & 2 deletions src/catalan/ExtendCat.gf
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
--# -path=alltenses:../common:../abstract:../romance
concrete ExtendCat of Extend = CatCat ** ExtendRomanceFunctor-- -
-- [
-- ]
[

BaseVPS, ConsVPS, PredVPS, MkVPS, ConjVPS, RelVPS

]
-- don't forget to put the names of your own
-- definitions here
with
Expand All @@ -15,4 +18,32 @@ concrete ExtendCat of Extend = CatCat ** ExtendRomanceFunctor-- -
ParadigmsCat in {
-- put your own definitions here


lincat
VPS = {s : Mood => Agr => Bool => Str} ;
[VPS] = {s1,s2 : Mood => Agr => Bool => Str} ;

lin
BaseVPS x y = twoTable3 Mood Agr Bool x y ;
ConsVPS = consrTable3 Mood Agr Bool comma ;

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

RelVPS rp vpi = {
s = \\m, agr => rp.s ! False ! complAgr agr ! Nom ++ vpi
.s ! m ! (Ag rp.a.g rp.a.n P3) ! False ;
c = Nom
} ;


} ;
8 changes: 7 additions & 1 deletion src/french/ExtendFre.gf
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ concrete ExtendFre of Extend =
GenRP,
ExistCN, ExistMassCN, ExistPluralCN, RNP, ReflRNP,
PassVPSlash, PassAgentVPSlash, PastPartAP, PastPartAgentAP, ApposNP, CompoundN,
BaseVPS, ConsVPS, PredVPS, MkVPS, ConjVPS
BaseVPS, ConsVPS, PredVPS, MkVPS, ConjVPS, RelVPS
] -- put the names of your own definitions here
with
(Grammar = GrammarFre) **
Expand Down Expand Up @@ -153,5 +153,11 @@ lin UseDAP = \dap ->
! DDir ! tm.t ! tm.a ! p.p ! m
} ;
ConjVPS = conjunctDistrTable3 Mood Agr Bool ;

RelVPS rp vpi = {
s = \\m, agr => rp.s ! False ! complAgr agr ! Nom ++ vpi
.s ! m ! (Ag rp.a.g rp.a.n P3) ! False ;
c = Nom
} ;

}
30 changes: 29 additions & 1 deletion src/italian/ExtendIta.gf
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
concrete ExtendIta of Extend = CatIta ** ExtendRomanceFunctor -
[
GenRP,
PassVPSlash, PassAgentVPSlash
PassVPSlash, PassAgentVPSlash,
BaseVPS, ConsVPS, PredVPS, MkVPS, ConjVPS, RelVPS

]
-- don't forget to put the names of your own
-- definitions here
Expand Down Expand Up @@ -45,4 +47,30 @@ oper
comp = \\a => vps.comp ! a ++ (let agr = complAgr a in vps.s.s ! VPart agr.g agr.n) ++ agent ;
} ;

lincat
VPS = {s : Mood => Agr => Bool => Str} ;
[VPS] = {s1,s2 : Mood => Agr => Bool => Str} ;

lin
BaseVPS x y = twoTable3 Mood Agr Bool x y ;
ConsVPS = consrTable3 Mood Agr Bool comma ;

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

RelVPS rp vpi = {
s = \\m, agr => rp.s ! False ! complAgr agr ! Nom ++ vpi
.s ! m ! (Ag rp.a.g rp.a.n P3) ! False ;
c = Nom
} ;

}
30 changes: 29 additions & 1 deletion src/portuguese/ExtendPor.gf
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ concrete ExtendPor of Extend = CatPor ** ExtendRomanceFunctor -
youPlFem_Pron,
youPolFem_Pron,
youPolPlFem_Pron,
youPolPl_Pron
youPolPl_Pron,
BaseVPS, ConsVPS, PredVPS, MkVPS, ConjVPS, RelVPS
] -- don't forget to put the names of your own
-- definitions here
with
Expand Down Expand Up @@ -120,4 +121,31 @@ concrete ExtendPor of Extend = CatPor ** ExtendRomanceFunctor -
youPolPlFem_Pron = pronAgr youPolPl_Pron Fem Pl P2 ;
theyFem_Pron = mkPronFrom S.they_Pron "elas" "as" "lhes" "elas" Fem Pl P3 ;

lincat
VPS = {s : Mood => Agr => Bool => Str} ;
[VPS] = {s1,s2 : Mood => Agr => Bool => Str} ;

lin
BaseVPS x y = twoTable3 Mood Agr Bool x y ;
ConsVPS = consrTable3 Mood Agr Bool comma ;

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


RelVPS rp vpi = {
s = \\m, agr => rp.s ! False ! complAgr agr ! Nom ++ vpi
.s ! m ! (Ag rp.a.g rp.a.n P3) ! False ;
c = Nom
} ;

} ;
10 changes: 9 additions & 1 deletion src/spanish/ExtendSpa.gf
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,9 @@ concrete ExtendSpa of Extend = CatSpa ** ExtendRomanceFunctor -
youPolPlFem_Pron,
youPolPl_Pron,
PassVPSlash, PassAgentVPSlash,
UseComp_estar, UseComp_ser
UseComp_estar, UseComp_ser,
BaseVPS, ConsVPS, PredVPS, MkVPS, ConjVPS, RelVPS

] -- don't forget to put the names of your own
-- definitions here
with
Expand Down Expand Up @@ -125,4 +127,10 @@ oper

lin AnaphPron np = agr2pron ! np.a ;


RelVPS rp vpi = {
s = \\m, agr => rp.s ! False ! complAgr agr ! Nom ++ vpi
.s ! m ! (Ag rp.a.g rp.a.n P3) ! False ;
c = Nom
} ;
} ;

0 comments on commit 78fc625

Please sign in to comment.