1
0
forked from GitHub/gf-rgl

(May) move passive to V's infl.table+rename opers

This commit is contained in:
Inari Listenmaa
2023-02-24 11:15:03 +08:00
parent a8b061926b
commit bfb016b3ea
4 changed files with 16 additions and 23 deletions

View File

@@ -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"} ;
-- } ;
--------------------------------------------------------------------------------

View File

@@ -142,6 +142,7 @@ param
VForm =
Root -- infinitive, imperative, …
| Active
| Passive
| Imperative
;

View File

@@ -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 ->

View File

@@ -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 =