forked from GitHub/gf-rgl
(May) Add VV complements
This commit is contained in:
@@ -102,7 +102,9 @@ concrete CatMay of Cat = CommonX ** open ResMay, Prelude in {
|
|||||||
VA, -- adjective-complement verb e.g. "look"
|
VA, -- adjective-complement verb e.g. "look"
|
||||||
V = ResMay.Verb ;
|
V = ResMay.Verb ;
|
||||||
|
|
||||||
VV, -- verb-phrase-complement verb e.g. "want"
|
VV -- verb-phrase-complement verb e.g. "want"
|
||||||
|
= SS ;
|
||||||
|
|
||||||
V2A, -- verb with NP and AP complement e.g. "paint"
|
V2A, -- verb with NP and AP complement e.g. "paint"
|
||||||
V2V, -- verb with NP and V complement e.g. "cause"
|
V2V, -- verb with NP and V complement e.g. "cause"
|
||||||
V2S, -- verb with NP and S complement e.g. "tell"
|
V2S, -- verb with NP and S complement e.g. "tell"
|
||||||
|
|||||||
@@ -43,8 +43,9 @@ oper
|
|||||||
mkV3 : V -> Prep -> Prep -> V3 ; -- Prepositions for direct and indirect objects given
|
mkV3 : V -> Prep -> Prep -> V3 ; -- Prepositions for direct and indirect objects given
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- mkVV : overload {
|
mkVV : overload {
|
||||||
-- } ;
|
mkVV : Str -> VV ;
|
||||||
|
} ;
|
||||||
|
|
||||||
--
|
--
|
||||||
-- mkVA : Str -> VA
|
-- mkVA : Str -> VA
|
||||||
@@ -120,8 +121,9 @@ oper
|
|||||||
lin V3 (mkVerb3 v p q)
|
lin V3 (mkVerb3 v p q)
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
-- mkVV = overload {
|
mkVV = overload {
|
||||||
-- } ;
|
mkVV : Str -> VV = \vv -> lin VV (ss vv)
|
||||||
|
} ;
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|||||||
@@ -158,8 +158,7 @@ lin language_title_Utt = ss "bahasa Melayu" ;
|
|||||||
-- lin can8know_VV = can_VV ; -- can (capacity)
|
-- lin can8know_VV = can_VV ; -- can (capacity)
|
||||||
-- lin can_VV = mkVV "" ; -- can (possibility)
|
-- lin can_VV = mkVV "" ; -- can (possibility)
|
||||||
-- lin must_VV = mkVV "" ;
|
-- lin must_VV = mkVV "" ;
|
||||||
-- lin want_VV = mkVV "" subjunctive ;
|
lin want_VV = mkVV "mahu" ;
|
||||||
|
|
||||||
|
|
||||||
------
|
------
|
||||||
-- Voc
|
-- Voc
|
||||||
|
|||||||
@@ -18,9 +18,9 @@ lin
|
|||||||
-- ReflVP = ResMay.insertRefl ;
|
-- ReflVP = ResMay.insertRefl ;
|
||||||
|
|
||||||
-- : VV -> VP -> VP ;
|
-- : VV -> VP -> VP ;
|
||||||
-- ComplVV vv vp = let vc = vp.vComp in case vv.vvtype of {
|
ComplVV vv vp = vp ** {
|
||||||
--
|
s = \\vf => vv.s ++ vp.s ! Root
|
||||||
-- } ;
|
} ;
|
||||||
|
|
||||||
-- : VS -> S -> VP ;
|
-- : VS -> S -> VP ;
|
||||||
-- ComplVS vs s =
|
-- ComplVS vs s =
|
||||||
@@ -67,15 +67,14 @@ lin
|
|||||||
-- : VPSlash -> NP -> VP
|
-- : VPSlash -> NP -> VP
|
||||||
ComplSlash vps np = {s = \\vf => vps.s ! vf ++ vps.c2.s ++ np.s} ;
|
ComplSlash vps np = {s = \\vf => vps.s ! vf ++ vps.c2.s ++ np.s} ;
|
||||||
|
|
||||||
{-
|
|
||||||
-- : VV -> VPSlash -> VPSlash ;
|
-- : VV -> VPSlash -> VPSlash ;
|
||||||
-- Just like ComplVV except missing subject!
|
SlashVV vv vps = ComplVV vv vps ** {
|
||||||
SlashVV vv vps = ComplVV vv vps ** { missing = vps.missing ;
|
c2 = vps.c2 ; -- like ComplVV except missing object
|
||||||
post = vps.post } ;
|
passive = vv.s ++ vps.passive
|
||||||
|
} ;
|
||||||
|
|
||||||
-- : V2V -> NP -> VPSlash -> VPSlash ; -- beg me to buy
|
-- : V2V -> NP -> VPSlash -> VPSlash ; -- beg me to buy
|
||||||
SlashV2VNP v2v np vps =
|
-- SlashV2VNP v2v np vps =
|
||||||
-}
|
|
||||||
|
|
||||||
-- : Comp -> VP ;
|
-- : Comp -> VP ;
|
||||||
UseComp comp = comp ;
|
UseComp comp = comp ;
|
||||||
|
|||||||
@@ -5,3 +5,7 @@ LangMay: anjing dicinta
|
|||||||
Lang: UseCl (TTAnt TPres ASimul) PNeg (PredVP (DetCN (DetQuant DefArt NumSg) (UseN dog_N)) (PassV2 love_V2))
|
Lang: UseCl (TTAnt TPres ASimul) PNeg (PredVP (DetCN (DetQuant DefArt NumSg) (UseN dog_N)) (PassV2 love_V2))
|
||||||
LangEng: the dog isn't loved
|
LangEng: the dog isn't loved
|
||||||
LangMay: anjing tidak dicinta
|
LangMay: anjing tidak dicinta
|
||||||
|
|
||||||
|
Lang: UseCl (TTAnt TPres ASimul) PNeg (PredVP (DetCN (DetQuant DefArt NumSg) (UseN dog_N)) (ComplVV want_VV (PassV2 love_V2)))
|
||||||
|
LangEng: the dog doesn't want to be loved
|
||||||
|
LangMay: anjing tidak mahu dicinta
|
||||||
Reference in New Issue
Block a user