(Som) Add more preposition combinations with passive

This commit is contained in:
Inari Listenmaa
2019-07-23 21:40:14 +03:00
parent a6530e4f1d
commit c4d7eabc83
2 changed files with 14 additions and 1 deletions

View File

@@ -197,6 +197,10 @@ param
| Passive ; -- Hack: RGL only supports V2s as passive, so I can reuse V2's preposition slot for passives as well, and save >200 parameters. (Don't ask.)
PrepCombination = Ugu | Uga | Ula | Kaga | Kula | Kala
| Lagu -- laygu, lagugu, nalagu, laydinku
| Laga -- layga, lagaa, nalaga, laydinka
-- | TODO rest of combinations with impersonal-la
-- | TODO incorporate reflexive too
| Single PrepositionPlus ;
oper
@@ -204,7 +208,9 @@ oper
let oneWay : PrepositionPlus => Preposition => PrepCombination =
\\x,y => case <x,y> of {
<Passive,NoPrep> => Single Passive ;
<Passive,p> => Single (P p) ; -- FIXME p "waa lagu arkay" gives infinitely many trees now, because the passive is ignored here. Is there a combination for passive + personal pronoun + preposition?
<Passive,Ku> => Lagu ;
<Passive,Ka> => Laga ;
<Passive,p> => Single (P p) ; -- TODO rest of combinations
<P z,_> => case <z,y> of {
<U,U|Ku> => Ugu ;
<U,Ka> => Uga ;

View File

@@ -351,33 +351,40 @@ oper
Sg1_Prep => table { Ugu => "iigu" ; Uga => "iiga" ;
Ula => "iila" ; Kaga => "igaga" ;
Kula => "igula" ; Kala => "igala" ;
Lagu => "laygu" ; Laga => "layga" ;
Single p => (prepTable ! p).s ! Sg1_Prep } ;
Sg2_Prep => table { Ugu => "kuugu" ; Uga => "kaaga" ;
Ula => "kuula" ; Kaga => "kaaga" ;
Kula => "kugula" ; Kala => "kaala" ;
Lagu => "lagugu" ; Laga => "lagaa" ;
Single p => (prepTable ! p).s ! Sg2_Prep } ;
Pl1_Prep Excl =>
table { Ugu => "noogu" ; Uga => "nooga" ;
Ula => "noola" ; Kaga => "nagaga" ;
Kula => "nagula" ; Kala => "nagala" ;
Lagu => "nalagu" ; Laga => "nalaga" ;
Single p => (prepTable ! p).s ! Pl1_Prep Excl } ;
Pl1_Prep Incl =>
table { Ugu => "inoogu" ; Uga => "inooga" ;
Ula => "inoola" ; Kaga => "inagaga" ;
Kula => "inagula" ; Kala => "inagala" ;
Lagu => "inalagu" ; Laga => "inalaga" ;
Single p => (prepTable ! p).s ! Pl1_Prep Incl } ;
Pl2_Prep => table { Ugu => "idiinku" ; Uga => "idiinka" ;
Ula => "idiinla" ; Kaga => "idinkaga" ;
Kula => "idinkula" ; Kala => "idinkala" ;
Lagu => "laydinku" ; Laga => "laydinka" ;
Single p => (prepTable ! p).s ! Pl2_Prep } ;
Impers_Prep =>
table { Ugu => "loogu" ; Uga => "looga" ;
Ula => "loola" ; Kaga => "lagaga" ;
Kula => "lagula" ; Kala => "lagala" ;
Lagu => "lagu" ; Laga => "laga" ; -- TODO check
Single p => (prepTable ! p).s ! Impers_Prep } ;
a => table { Ugu => "ugu" ; Uga => "uga" ;
Ula => "ula" ; Kaga => "kaga" ;
Kula => "kula" ; Kala => "kala" ;
Lagu => "lagu" ; Laga => "laga" ;
Single p => (prepTable ! p).s ! a }
} ;