extensions from Codex
This commit is contained in:
1 parent
52790d5b43
commit
1cef16870e
36 files changed
+864
-236
No files matched your search
@@ -1,2 +1,2 @@
|
||||
concrete CatKam of Cat = CommonX - [Pol]
|
||||
concrete CatKam of Cat = CommonX
|
||||
** CatBantu with (ResBantu = ResKam);
|
||||
@@ -186,7 +186,7 @@ oper
|
||||
superVery ="vyu";
|
||||
|
||||
param
|
||||
VForm = VInf
|
||||
VForm = VInf | VImp Number
|
||||
| VPres Gender Number Person
|
||||
| VPast Gender Number Person
|
||||
| VFut Gender Number Person
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
--# -path=.:../abstract:../common:../api
|
||||
--# -path=.:../abstract:../common:../bantu
|
||||
|
||||
concrete LangKam of Lang =
|
||||
GrammarKam,
|
||||
|
||||
+10
-10
@@ -336,27 +336,27 @@ iregA : Str-> Str -> {s : AForm => Str} = \seo,seoo -> {
|
||||
AComp g n => ""} } ;
|
||||
|
||||
regV : Str -> Verb =
|
||||
\vika -> {
|
||||
s = table{ True => table{
|
||||
\vika -> let forms = table{ Pos => table{
|
||||
VInf => vika;
|
||||
VImp _ => vika;
|
||||
VPres g n p => Verbprefix g n p + vika;
|
||||
VPast g n p => Verbprefix g n p + init vika + "ie" ;
|
||||
VFut g n p => Verbfutureprefix g n p + vika
|
||||
} ;
|
||||
False =>table {
|
||||
Neg =>table {
|
||||
VInf => "ndi" + vika;
|
||||
VPres g n p => neg (Ag g n p) False Pres + "na" + vika ;
|
||||
VPast g n p => neg (Ag g n p) False Past + "ne" + vika ;
|
||||
VFut g n p => neg (Ag g n p) False Fut + "ka" + vika
|
||||
VImp _ => "ndi" + vika;
|
||||
VPres g n p => neg (Ag g n p) Neg Pres + "na" + vika ;
|
||||
VPast g n p => neg (Ag g n p) Neg Past + "ne" + vika ;
|
||||
VFut g n p => neg (Ag g n p) Neg Fut + "ka" + vika
|
||||
}
|
||||
};
|
||||
};
|
||||
} in {s = forms ; passive = forms};
|
||||
|
||||
neg : Agr -> Bool ->Tense -> Str = \a,b,t -> let
|
||||
neg : Agr -> Polarity ->Tense -> Str = \a,b,t -> let
|
||||
g = getGender a;
|
||||
n=getNumber a;
|
||||
p=getPerson a
|
||||
in case b of {True => [] ; False => negprefix g n t p} ;
|
||||
in case b of {Pos => [] ; Neg => negprefix g n t p} ;
|
||||
|
||||
negprefix : Gender -> Number -> Tense -> Person -> Str =\g,n,t,p-> case <g,n,t,p> of {
|
||||
<G1,Sg,_,P1> => "ndi";
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
concrete NumeralKam of Numeral = CatKam [Numeral,Digits] ** open Prelude,CommonBantu,DiffKam, MorphoKam in {
|
||||
concrete NumeralKam of Numeral = CatKam [Numeral,Digits,Decimal] ** open Prelude,CommonBantu,DiffKam, MorphoKam in {
|
||||
|
||||
lincat
|
||||
Digit = {s : DForm => CardOrd => Gender => Str} ;
|
||||
|
||||
@@ -9,7 +9,7 @@ resource ParadigmsKam = open
|
||||
in {
|
||||
|
||||
oper
|
||||
Gender : Type ;
|
||||
Gender : PType ;
|
||||
mu_a : Gender ;
|
||||
mu_mi : Gender ;
|
||||
i_ma : Gender ;
|
||||
@@ -21,7 +21,7 @@ oper
|
||||
u_n : Gender ;
|
||||
ku_ma : Gender ;
|
||||
|
||||
Number : Type ;
|
||||
Number : PType ;
|
||||
singular : Number ;
|
||||
plural : Number ;
|
||||
|
||||
@@ -383,7 +383,10 @@ mkN2 = overload {
|
||||
};
|
||||
|
||||
|
||||
prefixV : Str -> V -> V = \p,v -> lin V { s = \\b,vform => p + v.s! b ! vform } ;
|
||||
prefixV : Str -> V -> V = \p,v -> lin V {
|
||||
s = \\b,vform => p + v.s ! b ! vform ;
|
||||
passive = \\b,vform => p + v.passive ! b ! vform
|
||||
} ;
|
||||
mkV2 = overload {
|
||||
mkV2 : V -> V2 = dirV2 ;
|
||||
mkV2 : Str -> V2 = \s -> dirV2 (regV s) ;
|
||||
|
||||
Reference in new issue
Block a user