forked from GitHub/gf-rgl
@@ -168,6 +168,8 @@ resource ParadigmsAra = open
|
||||
|
||||
mkAdA : Str -> AdA ;
|
||||
|
||||
mkInterj : Str -> Interj ;
|
||||
|
||||
--2 Prepositions
|
||||
--
|
||||
-- A preposition as used for rection in the lexicon, as well as to
|
||||
@@ -467,7 +469,10 @@ resource ParadigmsAra = open
|
||||
rbT = mkRoot3 rootStr ;
|
||||
v8fun = case rbT.f of {
|
||||
("و"|"ي"|"ّ") => v8assimilated ;
|
||||
_ => v8sound }
|
||||
_ =>
|
||||
case rbT.c of {
|
||||
#weak => v8hollow ;
|
||||
_ => v8sound }}
|
||||
} in lin V (v8fun rbT) ;
|
||||
|
||||
v10 =
|
||||
@@ -638,7 +643,7 @@ resource ParadigmsAra = open
|
||||
mkAdv x = lin Adv (ss x) ;
|
||||
mkAdV x = lin AdV (ss x) ;
|
||||
mkAdA x = lin AdA (ss x) ;
|
||||
|
||||
mkInterj x = lin Interj (ss x) ;
|
||||
|
||||
dirV2 v = prepV2 v (casePrep acc) ;
|
||||
|
||||
|
||||
@@ -77,6 +77,9 @@ flags coding=utf8 ;
|
||||
ficAl = { h = "" ; m1 = "ِ" ; m2 = "َا" ; t = "" } ;
|
||||
ficlp = { h = "" ; m1 = "ِ" ; m2 = "ْ" ; t = "َة" } ;
|
||||
ftacal = { h = "" ; m1 = "ْتَ" ; m2 = "َ" ; t = "" } ;
|
||||
ftical = ftacal ** { m1 = "ْتِ" } ; -- IL hollow VIII
|
||||
ftAcal = ftacal ** { m1 = "ْتَا" } ; -- IL hollow VIII
|
||||
ftIcal = ftacal ** { m1 = "ْتِي" } ; -- IL hollow VIII
|
||||
ftacil = { h = "" ; m1 = "ْتَ" ; m2 = "ِ" ; t = "" } ;
|
||||
ttacal = ftacal ** { m1 = "" ; h = "تَّ" } ; ---- IL assimilated VIII
|
||||
ttacil = ftacil ** { m1 = "" ; h = "تَّ" } ; ---- IL assimilated VIII
|
||||
|
||||
@@ -10,6 +10,7 @@ concrete PhraseAra of Phrase = CatAra ** open
|
||||
UttQS qs = {s = \\g => qs.s ! QDir} ;
|
||||
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} ;
|
||||
UttInterj i = {s = \\g => i.s} ;
|
||||
|
||||
UttIP ip = {s = \\g => ip.s ! False ! g ! Def ! Nom} ; --IL
|
||||
UttAP ap = {s = ResAra.uttAP ap} ; --IL
|
||||
|
||||
@@ -28,7 +28,7 @@ concrete QuestionAra of Question = CatAra ** open ResAra, ParamX, Prelude, VerbA
|
||||
---- IL guessed
|
||||
-- : IComp -> NP -> QCl
|
||||
QuestIComp ic np =
|
||||
let vp = kaan (CompNP np) ;
|
||||
let vp = UseComp (CompNP np) ;
|
||||
ip : ResAra.IP = np ** { -- NP's s is already present in VP, we only want its agr
|
||||
s = \\_,_,_,_ => ic.s ! pgn2gn np.a.pgn } ;
|
||||
in QuestVP ip vp ;
|
||||
|
||||
@@ -569,8 +569,15 @@ v1defective_i : Root3 -> Vowel -> Verb = \bqy,vowImpf -> -- IL (conjugation 1d4)
|
||||
|
||||
v1doubleweak : Root3 -> Verb = \r'y ->
|
||||
let ry = r'y ** {c = ""} ;
|
||||
vforms : DefForms = \\x => rmSukun (v1DefForms_perfA ry a ! x) ; -- only remove the first sukun
|
||||
in verbDoubleDef vforms i ; -- sukun in suffixes is removed in verbDoubleDef
|
||||
vforms_doubleweak : DefForms = \\x => rmSukun (v1DefForms_perfA ry a ! x) ; -- only remove the first sukun
|
||||
vforms_weak : DefForms = v1DefForms_perfA r'y a ;
|
||||
vforms = table { 0 => vforms_weak ! 0 ; -- all perfect forms
|
||||
1 => vforms_weak ! 1 ;
|
||||
2 => vforms_weak ! 2 ;
|
||||
3 => vforms_weak ! 3 ;
|
||||
4 => vforms_weak ! 4 ;
|
||||
x => vforms_doubleweak ! x } ;
|
||||
in verbDoubleDef vforms a ; -- sukun in suffixes is removed in verbDoubleDef
|
||||
|
||||
|
||||
patDef1 : Vowel => Pattern =
|
||||
@@ -708,6 +715,28 @@ v8assimilated : Root3 -> Verb = --- IL 8a1
|
||||
muttafaq = "م" + uttafaq
|
||||
} in verb eittafaq euttufiq attafiq uttafaq eittafiq muttafaq;
|
||||
|
||||
v8hollow : Root3 -> Verb = -- IL
|
||||
\Hwj ->
|
||||
let {
|
||||
_Htaj = mkHollow ftacal Hwj ;
|
||||
_HtAj = mkHollow ftAcal Hwj ;
|
||||
_Htij = mkHollow ftical Hwj ;
|
||||
_HtIj = mkHollow ftIcal Hwj ;
|
||||
iHtaj = "اِ" + _Htaj ; -- VPerf Act (Per3 Fem Pl)
|
||||
iHtAj = "اِ" + _HtAj ; -- VPerf Act _
|
||||
uHtij = "اُ" + _Htij ; -- VPerf Pas (Per3 Fem Pl)
|
||||
uHtIj = "اُ" + _HtIj ; -- VPerf Pas _
|
||||
aHtaj = "َ" + _Htaj ; -- VImpf Act (Per2/Per3 Fem Pl)
|
||||
aHtAj = "َ" + _HtAj ; -- VImpf Act _
|
||||
uHtaj = "ُ" + _Htaj ; -- VImpf Pas (Per2/Per3 Fem Pl)
|
||||
uHtAj = "ُ" + _Htaj ; -- VImpf Pas _
|
||||
-- iHtaj again -- VImp Sg Masc / Pl Fem
|
||||
-- iHtAj again -- VImp Pl Masc / Sg Fem
|
||||
ppart = "مُ" + _HtAj -- PPart
|
||||
|
||||
} in verbHollow (toDefForms
|
||||
iHtAj iHtaj uHtIj uHtij aHtAj aHtaj
|
||||
uHtAj uHtaj iHtAj iHtaj ppart) ;
|
||||
v10sound : Root3 -> Verb = ---- IL 10s -- to be checked
|
||||
\qtl ->
|
||||
let {
|
||||
|
||||
Reference in New Issue
Block a user