mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-05-27 17:08:54 -06:00
(May) move passive to V's infl.table+rename opers
This commit is contained in:
@@ -135,8 +135,8 @@ oper
|
||||
} ;
|
||||
|
||||
mkV = overload {
|
||||
mkV : Str -> V = \v -> lin V (mkVerb v Ber) ;
|
||||
mkV : Str -> Prefix -> V = \v,p -> lin V (mkVerb v p)
|
||||
mkV : Str -> V = \v -> lin V (regVerb v Ber) ;
|
||||
mkV : Str -> Prefix -> V = \v,p -> lin V (regVerb v p)
|
||||
} ;
|
||||
|
||||
prefixV : V -> V = \v -> v ** {
|
||||
@@ -147,7 +147,7 @@ oper
|
||||
} ;
|
||||
|
||||
mkV2 = overload {
|
||||
mkV2 : Str -> V2 = \v2 -> lin V2 (mkVerb2 (mkVerb v2 Meng) dirPrep) ;
|
||||
mkV2 : Str -> V2 = \v2 -> lin V2 (mkVerb2 (regVerb v2 Meng) dirPrep) ;
|
||||
mkV2 : V -> Prep -> V2 = \v,p -> lin V2 (mkVerb2 v p)
|
||||
} ;
|
||||
|
||||
@@ -160,7 +160,7 @@ oper
|
||||
|
||||
mkV4 = overload {
|
||||
mkV4 : Str -> Str -> V2 = \v2,str ->
|
||||
lin V2 (mkVerb4 (mkVerb v2 Meng) dirPrep str) ;
|
||||
lin V2 (mkVerb4 (regVerb v2 Meng) dirPrep str) ;
|
||||
mkV4 : V -> Prep -> Str -> V2 = \v,p,str -> lin V2 (mkVerb4 v p str)
|
||||
} ;
|
||||
|
||||
@@ -177,12 +177,11 @@ oper
|
||||
} ;
|
||||
|
||||
mkV2V = overload {
|
||||
mkV2V : Str -> V2V = \v -> lin V2V (mkVerb2 (mkVerb v Meng) dirPrep) ;
|
||||
mkV2V : Str -> V2V = \v -> lin V2V (mkVerb2 (regVerb v Meng) dirPrep) ;
|
||||
mkV2V : V -> Prep -> Prep -> V2V = \v,p1,p2 -> lin V2V (mkVerb3 v p1 p2)
|
||||
} ;
|
||||
-- lin like_V2 = let like' : V2 = mkV2 "suka" in like' ** {
|
||||
-- s = \\_ => "suka" ;
|
||||
-- passive = "disukai" ;
|
||||
-- s = table {Passive => "disukai" ; _ => "suka"} ;
|
||||
-- } ;
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
|
||||
@@ -142,6 +142,7 @@ param
|
||||
VForm =
|
||||
Root -- infinitive, imperative, …
|
||||
| Active
|
||||
| Passive
|
||||
| Imperative
|
||||
;
|
||||
|
||||
|
||||
@@ -214,7 +214,6 @@ oper
|
||||
} ;
|
||||
Verb2 : Type = Verb ** {
|
||||
c2 : Preposition ;
|
||||
passive : Str
|
||||
} ;
|
||||
|
||||
Verb3 : Type = Verb2 ** {
|
||||
@@ -223,22 +222,24 @@ oper
|
||||
|
||||
Verb4 : Type = Verb ** {
|
||||
c2 : Preposition ;
|
||||
passive : Str
|
||||
} ;
|
||||
|
||||
-- VV : Type = Verb ** {vvtype : VVForm} ;
|
||||
|
||||
mkVerb : Str -> Prefix -> Verb = \str,p -> {
|
||||
regVerb : Str -> Prefix -> Verb = \str,p ->
|
||||
mkVerb str (prefix p str) ("di" + str) (str + "kan") ;
|
||||
|
||||
mkVerb : (makan, memakan, dimakan, makankan : Str) -> Verb = \rt,act,pass,imp -> {
|
||||
s = table {
|
||||
Root => str ;
|
||||
Active => prefix p str ;
|
||||
Imperative => str ++ BIND ++ "kan"
|
||||
Root => rt ;
|
||||
Active => act ;
|
||||
Passive => pass ;
|
||||
Imperative => imp
|
||||
}
|
||||
} ;
|
||||
|
||||
mkVerb2 : Verb -> Preposition -> Verb2 = \v,pr -> v ** {
|
||||
c2 = pr ;
|
||||
passive = "di" ++ BIND ++ v.s ! Root
|
||||
} ;
|
||||
|
||||
mkVerb3 : Verb -> (p,q : Preposition) -> Verb3 = \v,p,q ->
|
||||
|
||||
@@ -9,7 +9,7 @@ lin
|
||||
UseV = ResMay.useV ;
|
||||
|
||||
-- : V2 -> VP ; -- be loved
|
||||
PassV2 v2 = useV {s = \\_ => v2.passive} ;
|
||||
PassV2 v2 = useV {s = \\_ => v2.s ! Passive} ;
|
||||
|
||||
-- : VPSlash -> VP ;
|
||||
-- ReflVP = ResMay.insertRefl ;
|
||||
@@ -113,17 +113,9 @@ lin
|
||||
-- : VV -> VPSlash -> VPSlash ;
|
||||
SlashVV vv vps = ComplVV vv vps ** {
|
||||
c2 = vps.c2 ; -- like ComplVV except missing object
|
||||
passive = vv.s ++ vps.passive;
|
||||
adjCompl = vps.adjCompl ;
|
||||
} ;
|
||||
|
||||
-- SlashVV vv vp = vp ** useV {
|
||||
-- s = \\vf => vv.s ++ linVP vp ;
|
||||
-- c2 = vp.c2 ;
|
||||
-- passive = vv.s ++ vp.passive;
|
||||
-- adjCompl = vp.adjCompl ;
|
||||
-- } ;
|
||||
|
||||
-- : V2V -> NP -> VPSlash -> VPSlash ; -- beg me to buy
|
||||
-- SlashV2VNP v2v np vps =
|
||||
|
||||
|
||||
Reference in New Issue
Block a user