Reduce Params2 further

This commit is contained in:
John J. Camilleri
2021-02-26 11:52:12 +01:00
parent 6a5d735904
commit 9785f8351d
3 changed files with 21 additions and 26 deletions

View File

@@ -1,7 +1,6 @@
abstract Params2 = {
cat Quality ; MassKind ;
fun
Salt : MassKind;
Good : Quality;
SuchMassKind : Quality -> MassKind -> MassKind;
SuchMassKind : Quality -> MassKind;
}

View File

@@ -1,2 +1,2 @@
Params2: SuchMassKind Good Salt
Params2Cnc: Salz gutes
Params2: SuchMassKind Good
Params2Cnc: gutes

View File

@@ -1,30 +1,26 @@
concrete Params2Cnc of Params2 = {
param Prelude_Bool = Prelude_False | Prelude_True;
param ResGer_AForm = ResGer_APred | ResGer_AMod ResGer_GenNum;
param ResGer_GenNum = ResGer_GSg ResGer_Gender | ResGer_GPl;
param ResGer_Gender = ResGer_Masc | ResGer_Fem | ResGer_Neutr;
param
AForm = APred | AMod GenNum;
GenNum = GSg Gender | GPl;
Gender = Masc | Fem | Neutr;
lincat
Quality = {s : ResGer_AForm => Str};
MassKind = {s : Str; g : ResGer_Gender};
Quality = {s : AForm => Str ; g : Gender};
MassKind = {s : Str};
lin
SuchMassKind Quality_0 MassKind_1 =
{s =
(MassKind_1.s) ++
(Quality_0.s)!(ResGer_AMod (ResGer_GSg (MassKind_1.g)));
g = MassKind_1.g};
SuchMassKind qual = {
s = qual.s ! AMod (GSg qual.g)
};
Salt =
{s = "Salz";
g = ResGer_Neutr};
Good =
{s =
table {ResGer_APred => "gut";
ResGer_AMod (ResGer_GSg ResGer_Masc) => "guter";
ResGer_AMod (ResGer_GSg ResGer_Fem) => "gute";
ResGer_AMod (ResGer_GSg ResGer_Neutr) => "gutes";
ResGer_AMod ResGer_GPl => "gute"}};
Good = {
s =
table {APred => "gut";
AMod (GSg Masc) => "guter";
AMod (GSg Fem) => "gute";
AMod (GSg Neutr) => "gutes";
AMod GPl => "gute"} ;
g = Neutr
};
}