1
0
forked from GitHub/gf-rgl

(Ara) Add subject case field to VP

This commit is contained in:
Inari Listenmaa
2018-11-15 16:45:51 +01:00
parent bb0c93968b
commit be42e20158
3 changed files with 8 additions and 4 deletions

View File

@@ -13,7 +13,7 @@ concrete CatAra of Cat = CommonX - [Utt] ** open ResAra, Prelude, ParamX in {
SSlash, SSlash,
S = {s : Str} ; S = {s : Str} ;
QS = {s : QForm => Str} ; QS = {s : QForm => Str} ;
RS = {s : Agr => Case => Str} ; RS = {s : Agr => Case => Str} ; -- case because the relative pronoun inflects in case
-- Sentence -- Sentence
@@ -79,7 +79,8 @@ concrete CatAra of Cat = CommonX - [Utt] ** open ResAra, Prelude, ParamX in {
V, VS, VQ, VA = ResAra.Verb ; -- = {s : VForm => Str} ; V, VS, VQ, VA = ResAra.Verb ; -- = {s : VForm => Str} ;
V2, V2A = ResAra.Verb2 ; V2, V2A = ResAra.Verb2 ;
VV, V2S, V2Q = ResAra.Verb2 ; VV = ResAra.Verb2 ** {sc : Preposition} ;
V2S, V2Q = ResAra.Verb2 ;
V2V, V3 = ResAra.Verb3 ; V2V, V3 = ResAra.Verb3 ;
A = ResAra.Adj ; A = ResAra.Adj ;

View File

@@ -1363,6 +1363,7 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf ->
VP : Type = { VP : Type = {
s : PerGenNum => VPForm => Str ; s : PerGenNum => VPForm => Str ;
sc : Preposition ; -- subject case: e.g. يُمْكِنُ *لِ*Xِ
obj : Obj; obj : Obj;
pred : Comp; pred : Comp;
isPred : Bool; --indicates if there is a predicate (xabar) isPred : Bool; --indicates if there is a predicate (xabar)
@@ -1382,6 +1383,7 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf ->
VPImpf m => v.s ! (VImpf m Act pgn); VPImpf m => v.s ! (VImpf m Act pgn);
VPImp => v.s ! (VImp gn.g gn.n) VPImp => v.s ! (VImp gn.g gn.n)
}; };
sc = noPrep ;
obj = emptyObj ; obj = emptyObj ;
s2 = []; s2 = [];
pred = {s = \\_,_ => []} ; pred = {s = \\_,_ => []} ;
@@ -1431,7 +1433,7 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf ->
subj = np.empty subj = np.empty
++ case <vp.isPred,np.a.isPron> of { ++ case <vp.isPred,np.a.isPron> of {
<False,True> => [] ; -- prodrop if it's not predicative <False,True> => [] ; -- prodrop if it's not predicative
_ => np.s ! Nom _ => vp.sc.s ++ np.s ! vp.sc.c
} ; } ;
} in } in

View File

@@ -22,7 +22,8 @@ concrete VerbAra of Verb = CatAra ** open Prelude, ResAra, ParamX in {
s = \\pgn,vpf => vvVP.s ! pgn ! vpf s = \\pgn,vpf => vvVP.s ! pgn ! vpf
++ vv.c2.s -- أَنْ ++ vv.c2.s -- أَنْ
++ vp.s ! pgn ! VPImpf Cnj ; ++ vp.s ! pgn ! VPImpf Cnj ;
isPred = False isPred = False ;
sc = vv.sc
} ; } ;
-- : VS -> S -> VP ; -- say that she runs -- : VS -> S -> VP ; -- say that she runs