mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-09 04:59:31 -06:00
Reduce Params2 further
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
abstract Params2 = {
|
||||
cat Quality ; MassKind ;
|
||||
fun
|
||||
Salt : MassKind;
|
||||
Good : Quality;
|
||||
SuchMassKind : Quality -> MassKind -> MassKind;
|
||||
SuchMassKind : Quality -> MassKind;
|
||||
}
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
Params2: SuchMassKind Good Salt
|
||||
Params2Cnc: Salz gutes
|
||||
Params2: SuchMassKind Good
|
||||
Params2Cnc: gutes
|
||||
|
||||
@@ -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
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user