changed fields

This commit is contained in:
EkaterinaVoloshina
2026-04-10 15:12:02 +02:00
parent 0cd3450e08
commit 8808ce108b
5 changed files with 816 additions and 513 deletions

View File

@@ -1,16 +1,163 @@
concrete CatHye of Cat = CommonX ** open ResHye in {
lincat V = Verb ;
lincat VV,VS,VQ,VA = Verb ;
lincat V2 = Verb ** {c2 : Compl} ;
lincat V3,V2A,V2S,V2Q,V2V = Verb ** {c2,c3 : Compl} ;
lincat N = Noun ;
lincat N2 = Noun ** {c2 : Compl} ;
lincat N3 = Noun ** {c2,c3 : Compl} ;
lincat CN = Noun ;
lincat A = Adj ;
lincat A2 = Adj ** {c2 : Compl} ;
lincat AP = Adj ;
lincat Prep = Compl ;
}
concrete CatHye of Cat = CommonX ** open Prelude,ResHye in {
flags
coding = "UTF-8" ;
lincat A = {s : Case => Number => Str; def_dat : Number => Str;
def_nom : Number => Str; poss1 : Case => Number => Str;
poss2 : Case => Number => Str} ;
lincat A2 = {s : Case => Number => Str; def_dat : Number => Str;
def_nom : Number => Str; poss1 : Case => Number => Str;
poss2 : Case => Number => Str; c2 : {s : Str; c : Case}} ;
lincat ACard = {s : Str} ;
lincat AP = {} ;
lincat CN = {s : Case => Number => Str; def_dat : Number => Str;
def_nom : Number => Str; poss1 : Case => Number => Str;
poss2 : Case => Number => Str} ;
lincat Card = {s : Str} ;
lincat Cl = {s : Str} ;
lincat ClSlash = {s : Str} ;
lincat Comp = {s : Str} ;
lincat Conj = {s : Str} ;
lincat DAP = {s : Str} ;
lincat Decimal = {s : Str} ;
lincat Det = {s : Str; n : Number} ;
lincat Digits = {s : Str} ;
lincat GN = {s : Str} ;
lincat IComp = {s : Str} ;
lincat IDet = {s : Str} ;
lincat IP = {s : Str} ;
lincat IQuant = {s : Str} ;
lincat Imp = {s : Str} ;
lincat LN = {s : Str} ;
lincat N = {s : Case => Number => Str; def_dat : Number => Str;
def_nom : Number => Str; poss1 : Case => Number => Str;
poss2 : Case => Number => Str} ;
lincat N2 = {s : Case => Number => Str; def_dat : Number => Str;
def_nom : Number => Str; poss1 : Case => Number => Str;
poss2 : Case => Number => Str; c2 : {s : Str; c : Case}} ;
lincat N3 = {s : Case => Number => Str; def_dat : Number => Str;
def_nom : Number => Str; poss1 : Case => Number => Str;
poss2 : Case => Number => Str; c2 : {s : Str; c : Case};
c3 : {s : Str; c : Case}} ;
lincat NP = {s : Case => Number => Str; def_dat : Number => Str;
def_nom : Number => Str; poss1 : Case => Number => Str;
poss2 : Case => Number => Str} ;
lincat Num = {s : Str; n : Number} ;
lincat Numeral = {s : Str} ;
lincat Ord = {s : Str} ;
lincat PN = {s : Str} ;
lincat Predet = {s : Str} ;
lincat Prep = {s : Str; c : Case; lock_Prep : {}; isPre : Bool} ;
lincat Pron = {s : Str} ;
lincat QCl = {s : Str} ;
lincat QS = {s : Str} ;
lincat Quant = {s : Str} ;
lincat RCl = {s : Str} ;
lincat RP = {s : Str} ;
lincat RS = {s : Str} ;
lincat S = {s : Str} ;
lincat SN = {s : Str} ;
lincat SSlash = {s : Str} ;
lincat Subj = {s : Str} ;
lincat V = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str} ;
lincat V2 = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str;
c2 : {s : Str; c : Case}} ;
lincat V2A = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str;
c2 : {s : Str; c : Case}; c3 : {s : Str; c : Case}} ;
lincat V2Q = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str;
c2 : {s : Str; c : Case}; c3 : {s : Str; c : Case}} ;
lincat V2S = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str;
c2 : {s : Str; c : Case}; c3 : {s : Str; c : Case}} ;
lincat V2V = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str;
c2 : {s : Str; c : Case}; c3 : {s : Str; c : Case}} ;
lincat V3 = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str;
c2 : {s : Str; c : Case}; c3 : {s : Str; c : Case}} ;
lincat VA = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str} ;
lincat VP = {s : Case => Number => Str;
conditional : Aspect => Person => Number => Case => Number => Str;
converb : {Imperfective : Case => Number => Str;
FutCon1 : Case => Number => Str; FutCon2 : Case => Number => Str;
Negative : Case => Number => Str;
Perfective : Case => Number => Str;
Simultaneous : Case => Number => Str};
imperative : Number => Number => Str;
passive : Case => Number => Str;
past : Person => Number => Case => Number => Str;
participle : PartType => Case => Number => Str;
subjunctive : Aspect => Person => Number => Case => Number => Str} ;
lincat VPSlash = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str; lock_V : {}} ;
lincat VQ = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str} ;
lincat VS = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str} ;
lincat VV = {s : Str; causative : Str;
conditional : Aspect => Person => Number => Str;
converb : {Imperfective : Str; FutCon1 : Str; FutCon2 : Str;
Negative : Str; Perfective : Str; Simultaneous : Str};
imperative : Number => Str; passive : Str;
past : Person => Number => Str; participle : PartType => Str;
subjunctive : Aspect => Person => Number => Str} ;
}

View File

@@ -1,13 +1,169 @@
concrete CatKaz of Cat = CommonX ** open ResKaz in {
lincat N = Noun ;
lincat N2 = Noun ** {c2 : Compl} ;
lincat N3 = Noun ** {c2,c3 : Compl} ;
lincat V, VA, VV, VS, VQ = Verb ;
lincat V2, V2S, V2Q = Verb ** {c2 : Compl} ;
lincat V3, V2A, V2V = Verb ** {c2,c3 : Compl} ;
lincat A = {s : Str} ;
lincat A2 = A ** {c2 : Compl} ;
lincat Prep = Compl ;
}
concrete CatKaz of Cat = CommonX ** open Prelude,ResKaz in {
flags
coding = "UTF-8" ;
lincat A = {s : Str} ;
lincat A2 = {s : Str; lock_A : {}; c2 : {s : Str}} ;
lincat ACard = {s : Str} ;
lincat AP = {s : Str} ;
lincat CN = {s : Case => Str} ;
lincat Card = {s : Str} ;
lincat Cl = {infinitive : Case => Str} ;
lincat ClSlash = {s : Str} ;
lincat Comp = {s : Str} ;
lincat Conj = {s : Str} ;
lincat DAP = {s : Str} ;
lincat Decimal = {s : Str} ;
lincat Det = {s : Str; n : Number} ;
lincat Digits = {s : Str} ;
lincat GN = {s : Str} ;
lincat IComp = {s : Str} ;
lincat IDet = {s : Str} ;
lincat IP = {s : Str} ;
lincat IQuant = {s : Str} ;
lincat Imp = {s : Str} ;
lincat LN = {s : Str} ;
lincat N = {s : Case => Number => Str;
poss : Number => Person => Number => Str} ;
lincat N2 = {s : Case => Number => Str;
poss : Number => Person => Number => Str; c2 : {s : Str}} ;
lincat N3 = {s : Case => Number => Str;
poss : Number => Person => Number => Str; c2 : {s : Str};
c3 : {s : Str}} ;
lincat NP = {s : Case => Str} ;
lincat Num = {s : Str; n : Number} ;
lincat Numeral = {s : Str} ;
lincat Ord = {s : Str} ;
lincat PN = {s : Str} ;
lincat Predet = {s : Str} ;
lincat Prep = {s : Str} ;
lincat Pron = {s : Str} ;
lincat QCl = {s : Str} ;
lincat QS = {s : Str} ;
lincat Quant = {s : Str} ;
lincat RCl = {s : Str} ;
lincat RP = {s : Str} ;
lincat RS = {s : Str} ;
lincat S = {s : Str} ;
lincat SN = {s : Str} ;
lincat SSlash = {s : Str} ;
lincat Subj = {s : Str} ;
lincat V = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str} ;
lincat V2 = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str; c2 : {s : Str}} ;
lincat V2A = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str; c2 : {s : Str};
c3 : {s : Str}} ;
lincat V2Q = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str; c2 : {s : Str}} ;
lincat V2S = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str; c2 : {s : Str}} ;
lincat V2V = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str; c2 : {s : Str};
c3 : {s : Str}} ;
lincat V3 = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str; c2 : {s : Str};
c3 : {s : Str}} ;
lincat VA = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str} ;
lincat VP = {infinitive : Case => Str;
indicative : {fut : Case => Str;
pres : {progressive : Polarity => Case => Str;
noAspect : Polarity => Case => Str};
past : {perfect : Polarity => Case => Str;
progressive : Polarity => Case => Str;
noAspect : Polarity => Case => Str}};
subjunctive : Person => Case => Str} ;
lincat VPSlash = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str} ;
lincat VQ = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str} ;
lincat VS = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str} ;
lincat VV = {infinitive : Str;
indicative : {fut : Str;
pres : {progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str};
past : {perfect : Polarity => Person => Number => Str;
progressive : Polarity => Person => Number => Str;
noAspect : Polarity => Person => Number => Str}};
imperative : Polarity => Formality => Number => Str;
subjunctive : Person => Number => Str} ;
}

View File

@@ -34,118 +34,118 @@ lin InflectionV, InflectionV2, InflectionV3, InflectionV2V, InflectionV2S,
InflectionVQ, InflectionVA = \x -> {
t="v" ;
s1="" ;
s2=heading2 "Infinitive" ++ paragraph (x.Infinitive) ++
-- tr (th "Indicative" ++ th "Fut" ++ td (x.Indicative.Fut)) ++
s2=heading2 "Infinitive" ++ paragraph (x.infinitive) ++
-- tr (th "Indicative" ++ th "Fut" ++ td (x.indicative.Fut)) ++
heading2 "Present"++
frameTable (
tr (intagAttr "th" "rowspan=\"6\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.Indicative.Pres.noAspect ! Pos ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.noAspect ! Pos ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.Indicative.Pres.noAspect ! Pos ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.noAspect ! Pos ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.Indicative.Pres.noAspect ! Pos ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.noAspect ! Pos ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.Indicative.Pres.noAspect ! Pos ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.noAspect ! Pos ! P3 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"6\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.Indicative.Pres.noAspect ! Neg ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.noAspect ! Neg ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.Indicative.Pres.noAspect ! Neg ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.noAspect ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.Indicative.Pres.noAspect ! Neg ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.noAspect ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.Indicative.Pres.noAspect ! Neg ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.noAspect ! Neg ! P3 ! Pl))) ++
tr (intagAttr "th" "rowspan=\"6\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.indicative.pres.noAspect ! Pos ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.noAspect ! Pos ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.indicative.pres.noAspect ! Pos ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.noAspect ! Pos ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.indicative.pres.noAspect ! Pos ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.noAspect ! Pos ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.indicative.pres.noAspect ! Pos ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.noAspect ! Pos ! P3 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"6\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.indicative.pres.noAspect ! Neg ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.noAspect ! Neg ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.indicative.pres.noAspect ! Neg ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.noAspect ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.indicative.pres.noAspect ! Neg ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.noAspect ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.indicative.pres.noAspect ! Neg ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.noAspect ! Neg ! P3 ! Pl))) ++
heading2 "Present Progressive"++
frameTable (
tr (intagAttr "th" "rowspan=\"6\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.Indicative.Pres.Progressive ! Pos ! P1 ! Sg))++
tr (th "Pl" ++ td (x.Indicative.Pres.Progressive ! Pos ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.Indicative.Pres.Progressive ! Pos ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.Progressive ! Pos ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.Indicative.Pres.Progressive ! Pos ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.Progressive ! Pos ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.Indicative.Pres.Progressive ! Pos ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.Progressive ! Pos ! P3 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"6\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.Indicative.Pres.Progressive ! Neg ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.Progressive ! Neg ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.Indicative.Pres.Progressive ! Neg ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.Progressive ! Neg ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.Indicative.Pres.Progressive ! Neg ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.Progressive ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.Indicative.Pres.Progressive ! Neg ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Pres.Progressive ! Neg ! P3 ! Pl))) ++
tr (intagAttr "th" "rowspan=\"6\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.indicative.pres.progressive ! Pos ! P1 ! Sg))++
tr (th "Pl" ++ td (x.indicative.pres.progressive ! Pos ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.indicative.pres.progressive ! Pos ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.progressive ! Pos ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.indicative.pres.progressive ! Pos ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.progressive ! Pos ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.indicative.pres.progressive ! Pos ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.progressive ! Pos ! P3 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"6\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.indicative.pres.progressive ! Neg ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.progressive ! Neg ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.indicative.pres.progressive ! Neg ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.progressive ! Neg ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.indicative.pres.progressive ! Neg ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.progressive ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.indicative.pres.progressive ! Neg ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.pres.progressive ! Neg ! P3 ! Pl))) ++
heading2 "Past" ++
frameTable (
tr (intagAttr "th" "rowspan=\"6\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.Indicative.Past.noAspect ! Pos ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.noAspect ! Pos ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.Indicative.Past.noAspect ! Pos ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.noAspect ! Pos ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.Indicative.Past.noAspect ! Pos ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.noAspect ! Pos ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.Indicative.Past.noAspect ! Pos ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.noAspect ! Pos ! P3 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"6\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.Indicative.Past.noAspect ! Neg ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.noAspect ! Neg ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.Indicative.Past.noAspect ! Neg ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.noAspect ! Neg ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.Indicative.Past.noAspect ! Neg ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.noAspect ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.Indicative.Past.noAspect ! Neg ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.noAspect ! Neg ! P3 ! Pl))) ++
tr (intagAttr "th" "rowspan=\"6\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.indicative.past.noAspect ! Pos ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.noAspect ! Pos ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.indicative.past.noAspect ! Pos ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.noAspect ! Pos ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.indicative.past.noAspect ! Pos ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.noAspect ! Pos ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.indicative.past.noAspect ! Pos ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.noAspect ! Pos ! P3 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"6\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.indicative.past.noAspect ! Neg ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.noAspect ! Neg ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.indicative.past.noAspect ! Neg ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.noAspect ! Neg ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.indicative.past.noAspect ! Neg ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.noAspect ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.indicative.past.noAspect ! Neg ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.noAspect ! Neg ! P3 ! Pl))) ++
heading2 "Past Perfect" ++
frameTable (
tr (intagAttr "th" "rowspan=\"6\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.Indicative.Past.Perfect ! Pos ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Perfect ! Pos ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.Indicative.Past.Perfect ! Pos ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Perfect ! Pos ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.Indicative.Past.Perfect ! Pos ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Perfect ! Pos ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.Indicative.Past.Perfect ! Pos ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Perfect ! Pos ! P3 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"6\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.Indicative.Past.Perfect ! Neg ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Perfect ! Neg ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.Indicative.Past.Perfect ! Neg ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Perfect ! Neg ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.Indicative.Past.Perfect ! Neg ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Perfect ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.Indicative.Past.Perfect ! Neg ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Perfect ! Neg ! P3 ! Pl))) ++
tr (intagAttr "th" "rowspan=\"6\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.indicative.past.perfect ! Pos ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.perfect ! Pos ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.indicative.past.perfect ! Pos ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.perfect ! Pos ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.indicative.past.perfect ! Pos ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.perfect ! Pos ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.indicative.past.perfect ! Pos ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.perfect ! Pos ! P3 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"6\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.indicative.past.perfect ! Neg ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.perfect ! Neg ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.indicative.past.perfect ! Neg ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.perfect ! Neg ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.indicative.past.perfect ! Neg ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.perfect ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.indicative.past.perfect ! Neg ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.perfect ! Neg ! P3 ! Pl))) ++
heading2 "Past Progressive" ++
frameTable (
tr (intagAttr "th" "rowspan=\"6\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.Indicative.Past.Progressive ! Pos ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Progressive ! Pos ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.Indicative.Past.Progressive ! Pos ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Progressive ! Pos ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.Indicative.Past.Progressive ! Pos ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Progressive ! Pos ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.Indicative.Past.Progressive ! Pos ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Progressive ! Pos ! P3 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"6\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.Indicative.Past.Progressive ! Neg ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Progressive ! Neg ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.Indicative.Past.Progressive ! Neg ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Progressive ! Neg ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.Indicative.Past.Progressive ! Neg ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Progressive ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.Indicative.Past.Progressive ! Neg ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.Indicative.Past.Progressive ! Neg ! P3 ! Pl))) ++
tr (intagAttr "th" "rowspan=\"6\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.indicative.past.progressive ! Pos ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.progressive ! Pos ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.indicative.past.progressive ! Pos ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.progressive ! Pos ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.indicative.past.progressive ! Pos ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.progressive ! Pos ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.indicative.past.progressive ! Pos ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.progressive ! Pos ! P3 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"6\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.indicative.past.progressive ! Neg ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.progressive ! Neg ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.indicative.past.progressive ! Neg ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.progressive ! Neg ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.indicative.past.progressive ! Neg ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.progressive ! Neg ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.indicative.past.progressive ! Neg ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.indicative.past.progressive ! Neg ! P3 ! Pl))) ++
heading2 "Imperative" ++
frameTable (
tr (intagAttr "th" "rowspan=\"4\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "Informal" ++ th "Sg" ++ td (x.Imperative_Jussive ! Pos ! Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Imperative_Jussive ! Pos ! Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "Formal" ++ th "Sg" ++ td (x.Imperative_Jussive ! Pos ! Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Imperative_Jussive ! Pos ! Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"4\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "Informal" ++ th "Sg" ++ td (x.Imperative_Jussive ! Neg ! Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Imperative_Jussive ! Neg ! Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "Formal" ++ th "Sg" ++ td (x.Imperative_Jussive ! Neg ! Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Imperative_Jussive ! Neg ! Formal ! Pl))) ++
tr (intagAttr "th" "rowspan=\"4\"" "Pos" ++ intagAttr "th" "rowspan=\"2\"" "Informal" ++ th "Sg" ++ td (x.imperative ! Pos ! Informal ! Sg)) ++
tr (th "Pl" ++ td (x.imperative ! Pos ! Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "Formal" ++ th "Sg" ++ td (x.imperative ! Pos ! Formal ! Sg)) ++
tr (th "Pl" ++ td (x.imperative ! Pos ! Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"4\"" "Neg" ++ intagAttr "th" "rowspan=\"2\"" "Informal" ++ th "Sg" ++ td (x.imperative ! Neg ! Informal ! Sg)) ++
tr (th "Pl" ++ td (x.imperative ! Neg ! Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "Formal" ++ th "Sg" ++ td (x.imperative ! Neg ! Formal ! Sg)) ++
tr (th "Pl" ++ td (x.imperative ! Neg ! Formal ! Pl))) ++
heading2 "Subjunctive" ++
frameTable (
tr (intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.Subjunctive ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.Subjunctive ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.Subjunctive ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.Subjunctive ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.Subjunctive ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.Subjunctive ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.Subjunctive ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.Subjunctive ! P3 ! Pl))) ;
tr (intagAttr "th" "rowspan=\"2\"" "P1" ++ th "Sg" ++ td (x.subjunctive ! P1 ! Sg)) ++
tr (th "Pl" ++ td (x.subjunctive ! P1 ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Informal" ++ th "Sg" ++ td (x.subjunctive ! P2 Informal ! Sg)) ++
tr (th "Pl" ++ td (x.subjunctive ! P2 Informal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P2 Formal" ++ th "Sg" ++ td (x.subjunctive ! P2 Formal ! Sg)) ++
tr (th "Pl" ++ td (x.subjunctive ! P2 Formal ! Pl)) ++
tr (intagAttr "th" "rowspan=\"2\"" "P3" ++ th "Sg" ++ td (x.subjunctive ! P3 ! Sg)) ++
tr (th "Pl" ++ td (x.subjunctive ! P3 ! Pl))) ;
s3=[]
} ;

File diff suppressed because it is too large Load Diff

View File

@@ -81,12 +81,12 @@ oper mkNoun : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_ : Str
param Polarity = Pos | Neg ;
oper Verb = {Infinitive: Str; Indicative: {Fut: Str; Pres: {Progressive: Polarity => Person => Number => Str; noAspect: Polarity => Person => Number => Str}; Past: {Perfect: Polarity => Person => Number => Str; Progressive: Polarity => Person => Number => Str; noAspect: Polarity => Person => Number => Str}}; Imperative_Jussive: Polarity => Formality => Number => Str; Subjunctive: Person => Number => Str} ; -- 113
oper Verb = {infinitive: Str; indicative: {fut: Str; pres: {progressive: Polarity => Person => Number => Str; noAspect: Polarity => Person => Number => Str}; past: {perfect: Polarity => Person => Number => Str; progressive: Polarity => Person => Number => Str; noAspect: Polarity => Person => Number => Str}}; imperative: Polarity => Formality => Number => Str; subjunctive: Person => Number => Str} ; -- 113
oper mkVerb : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_ : Str) -> Verb =
\f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,f25,f26,f27,f28,f29,f30,f31,f32,f33,f34,f35,f36,f37,f38,f39,f40,f41,f42,f43,f44,f45,f46,f47,f48,f49,f50,f51,f52,f53,f54,f55,f56,f57,f58,f59,f60,f61,f62,f63,f64,f65,f66,f67,f68,f69,f70,f71,f72,f73,f74,f75,f76,f77,f78,f79,f80,f81,f82,f83,f84,f85,f86,f87,f88,f89,f90,f91,f92,f93,f94,f95,f96,f97,f98 ->
{ Infinitive = f1 ;
Indicative = { Fut = f2 ;
Pres = { Progressive = table {
{ infinitive = f1 ;
indicative = { fut = f2 ;
pres = { progressive = table {
Pos => table {
P1 => table {
Sg => f3 ;
@@ -163,7 +163,7 @@ oper mkVerb : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_
}
}
} ;
Past = { Perfect = table {
past = { perfect = table {
Pos => table {
P1 => table {
Sg => f35 ;
@@ -201,7 +201,7 @@ oper mkVerb : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_
}
}
} ;
Progressive = table {
progressive = table {
Pos => table {
P1 => table {
Sg => f51 ;
@@ -279,7 +279,7 @@ oper mkVerb : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_
}
}
} ;
Imperative_Jussive = table {
imperative = table {
Pos => table {
Informal => table {
Sg => f83 ;
@@ -301,7 +301,7 @@ oper mkVerb : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_
}
}
} ;
Subjunctive = table {
subjunctive = table {
P1 => table {
Sg => f91 ;
Pl => f92