1
0
forked from GitHub/gf-rgl

Merge pull request #20 from inariksit/master

(Ara) overload mkV2 + some Utt*, CompCN, question_N
This commit is contained in:
Inari Listenmaa
2018-09-18 18:21:15 +02:00
committed by GitHub
4 changed files with 22 additions and 18 deletions

View File

@@ -310,6 +310,7 @@ flags
night_N = brkN "ليل" "فَعلة" "فَعالِي" Fem NoHum; --plural? night_N = brkN "ليل" "فَعلة" "فَعالِي" Fem NoHum; --plural?
nose_N = brkN "؟نف" "فَعل" "فُعُول" Masc NoHum; nose_N = brkN "؟نف" "فَعل" "فُعُول" Masc NoHum;
person_N = brkN "شخص" "فَعل" "أَفعال" Masc Hum; person_N = brkN "شخص" "فَعل" "أَفعال" Masc Hum;
question_N = mkN "سؤال" ; ----IL
rain_N = brkN "مطر" "فَعَل" "أَفعال" Masc NoHum; rain_N = brkN "مطر" "فَعَل" "أَفعال" Masc NoHum;
road_N = brkN "طرق" "فَعِيل" "فُعُل" Fem NoHum; road_N = brkN "طرق" "فَعِيل" "فُعُل" Fem NoHum;
root_N = brkN "جذر" "فَعل" "فُعُول" Masc NoHum ; root_N = brkN "جذر" "فَعل" "فُعُول" Masc NoHum ;

View File

@@ -180,7 +180,7 @@ resource ParadigmsAra = open
--Verb Form V : tafa``ala --Verb Form V : tafa``ala
v5 : Str -> V ; v5 : Str -> V ;
--Verb Form VI : tafaa`ala --Verb Form VI : tafaa`ala
v6 : Str -> V ; v6 : Str -> V ;
@@ -194,7 +194,11 @@ resource ParadigmsAra = open
-- Two-place verbs need a preposition, except the special case with direct object. -- Two-place verbs need a preposition, except the special case with direct object.
-- (transitive verbs). Notice that a particle comes from the $V$. -- (transitive verbs). Notice that a particle comes from the $V$.
mkV2 : V -> Preposition -> V2 ; mkV2 = overload {
mkV2 : V -> V2 = dirV2 ;
mkV2 : V -> Preposition -> V2 = prepV2 ;
mkV2 : Str -> V2 = strV2;
} ;
dirV2 : V -> V2 ; dirV2 : V -> V2 ;
@@ -497,8 +501,11 @@ resource ParadigmsAra = open
mkAdA x = ss x ** {lock_AdA = <>} ; mkAdA x = ss x ** {lock_AdA = <>} ;
mkPreposition p = p ; mkPreposition p = p ;
mkV2 v p = v ** {s = v.s ; c2 = p ; lock_V2 = <>} ;
dirV2 v = mkV2 v [] ; prepV2 : V -> Preposition -> V2 = \v,p -> v ** {s = v.s ; c2 = p ; lock_V2 = <>} ;
strV2 : Str -> V2 = \str -> dirV2 (mkV str) ;
dirV2 v = prepV2 v [] ;
mkV3 v p q = v ** {s = v.s ; c2 = p ; c3 = q ; lock_V3 = <>} ; mkV3 v p q = v ** {s = v.s ; c2 = p ; c3 = q ; lock_V3 = <>} ;
dirV3 v p = mkV3 v [] p ; dirV3 v p = mkV3 v [] p ;

View File

@@ -7,25 +7,20 @@ concrete PhraseAra of Phrase = CatAra ** open
lin lin
PhrUtt pconj utt voc = {s = pconj.s ++ utt.s ! Masc ++ voc.s} ;--FIXME PhrUtt pconj utt voc = {s = pconj.s ++ utt.s ! Masc ++ voc.s} ;--FIXME
UttS s = {s = \\g => s.s} ; ---- OK? AR
UttIAdv s = {s = \\g => s.s} ; ---- OK? AR
UttQS qs = {s = \\g => qs.s ! QDir} ; UttQS qs = {s = \\g => qs.s ! QDir} ;
UttImpSg pol imp = {s = \\g => imp.s ! pol.p ! g ! ResAra.Sg ++ pol.s} ; UttImpSg pol imp = {s = \\g => imp.s ! pol.p ! g ! ResAra.Sg ++ pol.s} ;
UttImpPl,UttImpPol = \pol,imp -> {s = \\g => imp.s ! pol.p ! g ! ResAra.Pl ++ pol.s} ; UttImpPl,UttImpPol = \pol,imp -> {s = \\g => imp.s ! pol.p ! g ! ResAra.Pl ++ pol.s} ;
--
UttIP ip = {s = \\_ => ip.s} ; ---- AR
-- AP = { s : Species => Gender => Number => State => Case => Str } ; UttIP ip = {s = \\_ => ip.s} ; ---- AR
UttAP ap = {s = ResAra.uttAP ap} ; --IL UttAP ap = {s = ResAra.uttAP ap} ; --IL
-- Card = {s : Gender => State => Case => Str } ;
UttCard c = {s = ResAra.uttNum c} ; --IL UttCard c = {s = ResAra.uttNum c} ; --IL
-- UttIAdv iadv = iadv ; UttCN cn = {s = \\_ => cn.s ! Sg ! Def ! Nom} ; --IL
UttNP np = {s = \\_ => np.s ! Nom} ; UttNP np = {s = \\_ => np.s ! Nom} ;
-- UttVP vp = {s = infVP False vp (agrP3 Sg)} ; UttVP vp = {s = \\_ => linVP vp} ; --IL
UttAdv adv = {s = \\_ => adv.s} ; UttS,
UttAdv,
UttIAdv = \s -> {s = \\_ => s.s} ; ---- OK? AR
-- --
NoPConj = {s = []} ; NoPConj = {s = []} ;
-- PConjConj conj = conj ; -- PConjConj conj = conj ;

View File

@@ -5,7 +5,7 @@ concrete VerbAra of Verb = CatAra ** open Prelude, ResAra in {
lin lin
UseV = predV ; UseV = predV ;
SlashVV vv vps = vps ** predV vv ; ---- totally wrong /IL SlashVV vv vps = vps ** predV vv ; ----IL
SlashV2a v = predV v ** {c2 = v.c2}; SlashV2a v = predV v ** {c2 = v.c2};
Slash3V3 v np = insertObj np (predV v) ** {c2 = v.c2}; Slash3V3 v np = insertObj np (predV v) ** {c2 = v.c2};
@@ -37,8 +37,9 @@ concrete VerbAra of Verb = CatAra ** open Prelude, ResAra in {
-- --
-- PassV2 v = insertObj (\\_ => v.s ! VPPart) (predAux auxBe) ; -- PassV2 v = insertObj (\\_ => v.s ! VPPart) (predAux auxBe) ;
-- --
-- UseVS, UseVQ = \vv -> {s = vv.s ; c2 = [] ; isRefl = vv.isRefl} ; -- no -- UseVS, UseVQ = \vv -> {s = vv.s ; c2 = [] ; isRefl = vv.isRefl} ; -- no
--
CompCN cn = {s = \\agr,c => cn.s ! agr.n ! Indef ! c} ; ----IL
CompAP ap = {s = \\agr,c => ap.s ! Hum ! agr.g ! agr.n ! Indef ! c} ; --FIXME CompAP ap = {s = \\agr,c => ap.s ! Hum ! agr.g ! agr.n ! Indef ! c} ; --FIXME
CompNP np = {s = \\_,c => np.s ! c}; CompNP np = {s = \\_,c => np.s ! c};
CompAdv a = {s = \\_,_ => a.s} ; CompAdv a = {s = \\_,_ => a.s} ;