mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-05-28 01:18:57 -06:00
added Extend.PassVPSlash to Ita, Spa
This commit is contained in:
@@ -1,7 +1,8 @@
|
|||||||
--# -path=alltenses:../common:../abstract:../romance
|
--# -path=alltenses:../common:../abstract:../romance
|
||||||
concrete ExtendIta of Extend = CatIta ** ExtendRomanceFunctor-- -
|
concrete ExtendIta of Extend = CatIta ** ExtendRomanceFunctor -
|
||||||
-- [
|
[
|
||||||
-- ]
|
PassVPSlash, PassAgentVPSlash
|
||||||
|
]
|
||||||
-- don't forget to put the names of your own
|
-- don't forget to put the names of your own
|
||||||
-- definitions here
|
-- definitions here
|
||||||
with
|
with
|
||||||
@@ -21,4 +22,19 @@ lin FullName gn sn = {
|
|||||||
g = gn.g
|
g = gn.g
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
} ;
|
|
||||||
|
lin PassVPSlash vps = passVPSlash vps [] ;
|
||||||
|
PassAgentVPSlash vps np = passVPSlash
|
||||||
|
vps (let by = <Grammar.by8agent_Prep : Prep> in by.s ++ (np.s ! by.c).ton) ;
|
||||||
|
|
||||||
|
oper
|
||||||
|
passVPSlash : VPSlash -> Str -> VP = \vps, agent ->
|
||||||
|
let auxvp = predV auxPassive
|
||||||
|
in
|
||||||
|
vps ** {
|
||||||
|
s = auxvp.s ;
|
||||||
|
agr = auxvp.agr ;
|
||||||
|
comp = \\a => vps.comp ! a ++ (let agr = complAgr a in vps.s.s ! VPart agr.g agr.n) ++ agent ;
|
||||||
|
} ;
|
||||||
|
|
||||||
|
}
|
||||||
|
|||||||
@@ -19,7 +19,8 @@ concrete ExtendSpa of Extend = CatSpa ** ExtendRomanceFunctor -
|
|||||||
youPlFem_Pron,
|
youPlFem_Pron,
|
||||||
youPolFem_Pron,
|
youPolFem_Pron,
|
||||||
youPolPlFem_Pron,
|
youPolPlFem_Pron,
|
||||||
youPolPl_Pron
|
youPolPl_Pron,
|
||||||
|
PassVPSlash, PassAgentVPSlash
|
||||||
] -- don't forget to put the names of your own
|
] -- don't forget to put the names of your own
|
||||||
-- definitions here
|
-- definitions here
|
||||||
with
|
with
|
||||||
@@ -106,4 +107,18 @@ lin FullName gn sn = {
|
|||||||
g = gn.g
|
g = gn.g
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
lin PassVPSlash vps = passVPSlash vps [] ;
|
||||||
|
PassAgentVPSlash vps np = passVPSlash
|
||||||
|
vps (let by = <Grammar.by8agent_Prep : Prep> in by.s ++ (np.s ! by.c).ton) ;
|
||||||
|
|
||||||
|
oper
|
||||||
|
passVPSlash : VPSlash -> Str -> VP = \vps, agent ->
|
||||||
|
let auxvp = predV auxPassive
|
||||||
|
in
|
||||||
|
vps ** {
|
||||||
|
s = auxvp.s ;
|
||||||
|
agr = auxvp.agr ;
|
||||||
|
comp = \\a => vps.comp ! a ++ (let agr = complAgr a in vps.s.s ! VPart agr.g agr.n) ++ agent ;
|
||||||
|
} ;
|
||||||
|
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
Reference in New Issue
Block a user