forked from GitHub/gf-rgl
add mkV4 to add suffix to some verbs; passive unit tests
This commit is contained in:
@@ -44,7 +44,7 @@ lin blood_N = mkN "darah" ;
|
|||||||
lin book_N = mkN "buku" ;
|
lin book_N = mkN "buku" ;
|
||||||
-- lin boy_N = mkN "" ;
|
-- lin boy_N = mkN "" ;
|
||||||
-- lin bread_N = mkN "" ;
|
-- lin bread_N = mkN "" ;
|
||||||
lin break_V2 = mkV2 "patahkan" ; -- TODO figure out if -kan needs to be separated
|
lin break_V2 = mkV4 "patah" "kan"; -- TODO figure out if -kan needs to be separated
|
||||||
-- lin breast_N = mkN "" ;
|
-- lin breast_N = mkN "" ;
|
||||||
-- lin breathe_V = mkV "" ;
|
-- lin breathe_V = mkV "" ;
|
||||||
-- lin broad_A = mkA "" ;
|
-- lin broad_A = mkA "" ;
|
||||||
@@ -224,9 +224,11 @@ lin long_A = mkA "panjang" ;
|
|||||||
-- lin lose_V2 = mkV2 "" ;
|
-- lin lose_V2 = mkV2 "" ;
|
||||||
-- lin louse_N = mkN "" ;
|
-- lin louse_N = mkN "" ;
|
||||||
-- lin love_N = mkN "" ;
|
-- lin love_N = mkN "" ;
|
||||||
lin love_V2 = let love' : V2 = mkV2 "cinta" in love' ** {
|
-- lin love_V2 = let love' : V2 = mkV2 "cinta" in love' ** {
|
||||||
s = \\_ => "mencintai" ;
|
-- s = \\_ => "mencintai" ;
|
||||||
} ;
|
-- passive = "dicintai" ;
|
||||||
|
-- } ;
|
||||||
|
lin love_V2 = mkV4 "cinta" "i";
|
||||||
|
|
||||||
----
|
----
|
||||||
-- M
|
-- M
|
||||||
@@ -302,7 +304,7 @@ lin read_V2 = mkV2 "baca" ;
|
|||||||
-- lin round_A = mkA "" ;
|
-- lin round_A = mkA "" ;
|
||||||
-- lin rub_V2 = mkV2 "" ;
|
-- lin rub_V2 = mkV2 "" ;
|
||||||
-- lin rubber_N = mkN "" ;
|
-- lin rubber_N = mkN "" ;
|
||||||
-- lin rule_N = mkN "" ;
|
lin rule_N = mkN "peraturan" ;
|
||||||
-- lin run_V = mkV "" ;
|
-- lin run_V = mkV "" ;
|
||||||
|
|
||||||
----
|
----
|
||||||
@@ -353,7 +355,7 @@ lin song_N = mkN "lagu" ;
|
|||||||
-- lin steel_N = mkN "" ;
|
-- lin steel_N = mkN "" ;
|
||||||
-- lin stick_N = mkN "" ;
|
-- lin stick_N = mkN "" ;
|
||||||
-- lin stone_N = mkN "" ;
|
-- lin stone_N = mkN "" ;
|
||||||
-- lin stop_V = mkV "" ;
|
lin stop_V = mkV "henti" ;
|
||||||
-- lin stove_N = mkN "" ;
|
-- lin stove_N = mkN "" ;
|
||||||
-- lin straight_A = mkA "" ;
|
-- lin straight_A = mkA "" ;
|
||||||
-- lin student_N = mkN "" ;
|
-- lin student_N = mkN "" ;
|
||||||
|
|||||||
@@ -133,6 +133,12 @@ oper
|
|||||||
lin V3 (mkVerb3 v p q)
|
lin V3 (mkVerb3 v p q)
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
mkV4 = overload {
|
||||||
|
mkV4 : Str -> Str -> V2 = \v2,str ->
|
||||||
|
lin V2 (mkVerb4 (mkVerb v2 Meng) dirPrep str) ;
|
||||||
|
mkV4 : V -> Prep -> Str -> V2 = \v,p,str -> lin V2 (mkVerb4 v p str)
|
||||||
|
} ;
|
||||||
|
|
||||||
mkVV = overload {
|
mkVV = overload {
|
||||||
mkVV : Str -> VV = \vv -> lin VV (ss vv)
|
mkVV : Str -> VV = \vv -> lin VV (ss vv)
|
||||||
} ;
|
} ;
|
||||||
|
|||||||
@@ -209,6 +209,11 @@ oper
|
|||||||
c3 : Preposition
|
c3 : Preposition
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
Verb4 : Type = Verb ** {
|
||||||
|
c2 : Preposition ;
|
||||||
|
passive : Str
|
||||||
|
} ;
|
||||||
|
|
||||||
-- VV : Type = Verb ** {vvtype : VVForm} ;
|
-- VV : Type = Verb ** {vvtype : VVForm} ;
|
||||||
|
|
||||||
mkVerb : Str -> Prefix -> Verb = \str,p -> {
|
mkVerb : Str -> Prefix -> Verb = \str,p -> {
|
||||||
@@ -220,12 +225,18 @@ oper
|
|||||||
|
|
||||||
mkVerb2 : Verb -> Preposition -> Verb2 = \v,pr -> v ** {
|
mkVerb2 : Verb -> Preposition -> Verb2 = \v,pr -> v ** {
|
||||||
c2 = pr ;
|
c2 = pr ;
|
||||||
passive = "di" + v.s ! Root -- TODO check
|
passive = "di" + v.s ! Root
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
mkVerb3 : Verb -> (p,q : Preposition) -> Verb3 = \v,p,q ->
|
mkVerb3 : Verb -> (p,q : Preposition) -> Verb3 = \v,p,q ->
|
||||||
mkVerb2 v p ** {c3 = q} ;
|
mkVerb2 v p ** {c3 = q} ;
|
||||||
|
|
||||||
|
mkVerb4 : Verb -> Preposition -> Str -> Verb4 = \v,pr,str -> v ** {
|
||||||
|
s = \\_ => v.s ! Active + str;
|
||||||
|
c2 = pr ;
|
||||||
|
passive = "di" + v.s ! Root + str
|
||||||
|
} ;
|
||||||
|
|
||||||
copula : Verb = {s = \\_ => "ada"} ; -- TODO
|
copula : Verb = {s = \\_ => "ada"} ; -- TODO
|
||||||
------------------
|
------------------
|
||||||
-- Adv
|
-- Adv
|
||||||
|
|||||||
@@ -1,11 +1,19 @@
|
|||||||
Lang: UseCl (TTAnt TPres ASimul) PPos (PredVP (DetCN (DetQuant that_Quant NumSg) (UseN dog_N)) (PassV2 love_V2))
|
Lang: UseCl (TTAnt TPres ASimul) PPos (PredVP (DetCN (DetQuant that_Quant NumSg) (UseN dog_N)) (PassV2 love_V2))
|
||||||
LangEng: that dog is loved
|
LangEng: that dog is loved
|
||||||
LangMay: anjing itu dicinta
|
LangMay: anjing itu dicintai
|
||||||
|
|
||||||
Lang: UseCl (TTAnt TPres ASimul) PNeg (PredVP (DetCN (DetQuant that_Quant NumSg) (UseN dog_N)) (PassV2 love_V2))
|
Lang: UseCl (TTAnt TPres ASimul) PNeg (PredVP (DetCN (DetQuant that_Quant NumSg) (UseN dog_N)) (PassV2 love_V2))
|
||||||
LangEng: that dog isn't loved
|
LangEng: that dog isn't loved
|
||||||
LangMay: anjing itu tidak dicinta
|
LangMay: anjing itu tidak dicintai
|
||||||
|
|
||||||
Lang: UseCl (TTAnt TPres ASimul) PNeg (PredVP (DetCN (DetQuant that_Quant NumSg) (UseN dog_N)) (ComplVV want_VV (PassV2 love_V2)))
|
Lang: UseCl (TTAnt TPres ASimul) PNeg (PredVP (DetCN (DetQuant that_Quant NumSg) (UseN dog_N)) (ComplVV want_VV (PassV2 love_V2)))
|
||||||
LangEng: that dog doesn't want to be loved
|
LangEng: that dog doesn't want to be loved
|
||||||
LangMay: anjing itu tidak mahu dicinta
|
LangMay: anjing itu tidak mahu dicintai
|
||||||
|
|
||||||
|
Lang: UseCl (TTAnt TPres ASimul) PPos (PredVP (DetCN (DetQuant that_Quant NumSg) (UseN book_N)) (PassV2 read_V2))
|
||||||
|
LangEng: that book is read
|
||||||
|
LangMay: buku itu dibaca
|
||||||
|
|
||||||
|
Lang: UseCl (TTAnt TPres ASimul) PPos (PredVP (DetCN (DetQuant that_Quant NumSg) (UseN book_N)) (AdvVP (PassV2 read_V2) (PrepNP to_Prep (UsePron youSg_Pron))))
|
||||||
|
LangEng: that book is read to you
|
||||||
|
LangMay: buku itu dibacakan kepada kamu
|
||||||
Reference in New Issue
Block a user