(Ara) Add new mkV2V constructors + better comments for degrA

This commit is contained in:
Inari Listenmaa
2019-01-09 13:51:06 +02:00
parent 579bdfcca5
commit 002fea0e66

View File

@@ -159,7 +159,7 @@ resource ParadigmsAra = open
idaafaA : N -> A -> A ; -- first argument will be in constructus but inflect in case, adjective in genitive, but inflect in gender, number and definiteness. e.g. غَيْرُ طَيِّبٍ idaafaA : N -> A -> A ; -- first argument will be in constructus but inflect in case, adjective in genitive, but inflect in gender, number and definiteness. e.g. غَيْرُ طَيِّبٍ
degrA : (posit,compar,plur : Str) -> A ; degrA : (masc,fem,plur : Str) -> A ; -- adjective where masculine singular is also the comparative form.
irregFemA : (masc : A) -> (fem : A) -> A ; -- adjective with irregular feminine. Takes two adjectives (masc. "regular" and fem. "regular") and puts them together. irregFemA : (masc : A) -> (fem : A) -> A ; -- adjective with irregular feminine. Takes two adjectives (masc. "regular" and fem. "regular") and puts them together.
@@ -531,7 +531,7 @@ resource ParadigmsAra = open
let { let {
fcl = mkRoot3 rootStr ; fcl = mkRoot3 rootStr ;
verb : Verb = case rootStr of { verb : Verb = case rootStr of {
f@? + c@? + "ّ" => v8geminate (f+c+c) ; f@? + c@? + "ّ" => v8geminate (f+c+c) ;
#weak + ? + ? => v8assimilated fcl ; #weak + ? + ? => v8assimilated fcl ;
? + #weak + ? => v8hollow fcl ; ? + #weak + ? => v8hollow fcl ;
_ => v8sound fcl } _ => v8sound fcl }
@@ -669,8 +669,8 @@ resource ParadigmsAra = open
AComp d c => rectifyHmz (indeclN akbar ! d ! c) } AComp d c => rectifyHmz (indeclN akbar ! d ! c) }
} ; } ;
degrA : (posit,compar,plur : Str) -> A degrA : (masc,fem,plur : Str) -> A
= \posit,compar,plur -> lin A {s = clr posit compar plur} ; = \masc,fem,plur -> lin A {s = clr masc fem plur} ;
idaafaA : N -> A -> A = \ghayr,tayyib -> tayyib ** { idaafaA : N -> A -> A = \ghayr,tayyib -> tayyib ** {
s = table { s = table {
@@ -777,6 +777,12 @@ resource ParadigmsAra = open
mkV2V = overload { mkV2V = overload {
mkV2V : V -> Str -> Str -> V2V = \v,p,q -> mkV2V : V -> Str -> Str -> V2V = \v,p,q ->
lin V2V (prepV3 v (mkPreposition p) (mkPreposition q) ** {sc = noPrep}) ; lin V2V (prepV3 v (mkPreposition p) (mkPreposition q) ** {sc = noPrep}) ;
mkV2V : V2 -> V2V = \v2 ->
lin V2V (v2 ** {c2 = v2.c2 ; c3,sc = noPrep}) ;
mkV2V : V2 -> Preposition -> V2V = \v2,p ->
lin V2V (v2 ** {c2 = v2.c2 ; c3 = p ; sc = noPrep}) ;
mkV2V : V2 -> Preposition -> Preposition -> V2V = \v2,p,q->
lin V2V (v2 ** {c2 = v2.c2 ; c3 = p ; sc = q}) ;
mkV2V : V -> Preposition -> Preposition -> V2V = \v,p,q -> mkV2V : V -> Preposition -> Preposition -> V2V = \v,p,q ->
lin V2V (prepV3 v p q ** {sc = noPrep}) ; lin V2V (prepV3 v p q ** {sc = noPrep}) ;
mkV2V : VV -> Preposition -> V2V = \vv,p -> mkV2V : VV -> Preposition -> V2V = \vv,p ->