extensions from Codex

This commit is contained in:
Krasimir Angelov committed 2026-10-14 08:34:11 +02:00
1 parent 52790d5b43
commit 1cef16870e
36 files changed
+864 -236

No files matched your search

+1 -1
View File
@@ -1,2 +1,2 @@
concrete CatKam of Cat = CommonX - [Pol]
concrete CatKam of Cat = CommonX
** CatBantu with (ResBantu = ResKam);
+1 -1
View File
@@ -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 -1
View File
@@ -1,4 +1,4 @@
--# -path=.:../abstract:../common:../api
--# -path=.:../abstract:../common:../bantu
concrete LangKam of Lang =
GrammarKam,
+10 -10
View File
@@ -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 -1
View File
@@ -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} ;
+6 -3
View File
@@ -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) ;