From 5b28e621b35f66c83765964658e74b3d631d7ba9 Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Thu, 20 Aug 2020 11:40:16 +0200 Subject: [PATCH] (May) Add dative "prep", direct object "prep" +truly empty emptyPrep --- src/malay/LexiconMay.gf | 4 ++-- src/malay/ParadigmsMay.gf | 8 ++++---- src/malay/ResMay.gf | 12 +++++++++++- 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/src/malay/LexiconMay.gf b/src/malay/LexiconMay.gf index dd756aa2..96806b15 100644 --- a/src/malay/LexiconMay.gf +++ b/src/malay/LexiconMay.gf @@ -148,7 +148,7 @@ lin father_N2 = mkN2 "bapa" ; -- lin garden_N = mkN "" ; -- lin girl_N = mkN "" ; -lin give_V3 = mkV3 (mkV "beri" Meng) ; +lin give_V3 = mkV3 (mkV "beri" Meng) emptyPrep datPrep ; -- lin glove_N = mkN "" ; lin go_V = mkV "pergi" ; -- lin gold_N = mkN "" ; @@ -308,7 +308,7 @@ lin read_V2 = mkV2 "baca" ; -- lin see_V2 = mkV2 "" ; -- lin seed_N = mkN "" ; -- lin seek_V2 = mkV2 "" ; -lin sell_V3 = mkV3 (mkV "jual" Meng) ; +lin sell_V3 = mkV3 (mkV "jual" Meng) emptyPrep emptyPrep ; -- TODO -- lin send_V3 = mkV3 "" ; -- lin sew_V = mkV "" ; -- lin sharp_A = mkA "" ; diff --git a/src/malay/ParadigmsMay.gf b/src/malay/ParadigmsMay.gf index 0effac4f..372e04e6 100644 --- a/src/malay/ParadigmsMay.gf +++ b/src/malay/ParadigmsMay.gf @@ -93,8 +93,8 @@ oper mkN2 = overload { - mkN2 : Str -> N2 = \s -> lin N2 (mkNoun s ** {c2 = emptyPrep}) ; - mkN2 : N -> N2 = \n -> lin N2 (n ** {c2 = emptyPrep}) ; + mkN2 : Str -> N2 = \s -> lin N2 (mkNoun s ** {c2 = dirPrep}) ; + mkN2 : N -> N2 = \n -> lin N2 (n ** {c2 = dirPrep}) ; } ; -- mkPN = overload { @@ -110,13 +110,13 @@ oper } ; mkV2 = overload { - mkV2 : Str -> V2 = \v2 -> lin V2 (mkVerb2 (mkVerb v2 Meng) emptyPrep) ; + mkV2 : Str -> V2 = \v2 -> lin V2 (mkVerb2 (mkVerb v2 Meng) dirPrep) ; mkV2 : V -> Prep -> V2 = \v,p -> lin V2 (mkVerb2 v p) } ; mkV3 = overload { mkV3 : V -> V3 = \v -> - lin V3 (mkVerb3 v emptyPrep emptyPrep) ; + lin V3 (mkVerb3 v dirPrep dirPrep) ; mkV3 : V -> (p,q : Prep) -> V3 = \v,p,q -> lin V3 (mkVerb3 v p q) } ; diff --git a/src/malay/ResMay.gf b/src/malay/ResMay.gf index 4bc04b69..0425f9c3 100644 --- a/src/malay/ResMay.gf +++ b/src/malay/ResMay.gf @@ -111,7 +111,8 @@ oper isPoss = False ; } ; - emptyPrep : Preposition = { + -- direct object: "hits him" -> "memukul+nya" + dirPrep : Preposition = { s = [] ; obj = table { P1 => BIND ++ "ku" ; @@ -120,6 +121,15 @@ oper isPoss = True ; } ; + -- truly empty + emptyPrep : Preposition = { + s = [] ; + obj = \\_ => [] ; + isPoss = True ; + } ; + + datPrep : Preposition = mkPrep "kepada" ; + applyPrep : Preposition -> NounPhrase -> Str = \prep,np -> case np.a of { IsPron p => prep.obj ! p ++ np.empty ;