forked from GitHub/gf-core
Foods grammar for Macedonian. Probably not quite correct
This commit is contained in:
103
examples/foods/FoodsMkd.gf
Normal file
103
examples/foods/FoodsMkd.gf
Normal file
@@ -0,0 +1,103 @@
|
|||||||
|
-- (c) 2009 Krasimir Angelov under LGPL
|
||||||
|
|
||||||
|
concrete FoodsMkd of Foods = {
|
||||||
|
|
||||||
|
flags coding = utf8 ;
|
||||||
|
|
||||||
|
lincat
|
||||||
|
Comment = Str;
|
||||||
|
Quality = {s : Agr => Str};
|
||||||
|
Item = {s : Str; a : Agr};
|
||||||
|
Kind = {s : Number => Str; g : Gender};
|
||||||
|
|
||||||
|
lin
|
||||||
|
Pred item qual = item.s
|
||||||
|
++ case item.a of {
|
||||||
|
ASg _ => "е";
|
||||||
|
APl => "се"
|
||||||
|
} ++ qual.s ! item.a;
|
||||||
|
This kind = {s = case kind.g of {
|
||||||
|
Masc => "ова"; -- not sure
|
||||||
|
Fem => "оваа"; -- not sure
|
||||||
|
Neutr => "ово" -- not sure
|
||||||
|
} ++ kind.s ! Sg;
|
||||||
|
a = ASg kind.g};
|
||||||
|
That kind = {s = case kind.g of {
|
||||||
|
Masc => "она"; -- not sure
|
||||||
|
Fem => "онаа"; -- not sure
|
||||||
|
Neutr => "оно" -- not sure
|
||||||
|
} ++ kind.s ! Sg;
|
||||||
|
a = ASg kind.g};
|
||||||
|
These kind = {s = "овие" ++ kind.s ! Pl; a = APl};
|
||||||
|
Those kind = {s = "овие" ++ kind.s ! Pl; a = APl};
|
||||||
|
Mod qual kind = {s = \\n => qual.s
|
||||||
|
! case n of {
|
||||||
|
Sg => ASg kind.g;
|
||||||
|
Pl => APl
|
||||||
|
}
|
||||||
|
++ kind.s ! n;
|
||||||
|
g = kind.g};
|
||||||
|
Wine = {s = table {
|
||||||
|
Sg => "вино";
|
||||||
|
Pl => "вина"
|
||||||
|
};
|
||||||
|
g = Neutr};
|
||||||
|
Cheese = {s = table {
|
||||||
|
Sg => "сирење";
|
||||||
|
Pl => "сирење" -- not sure
|
||||||
|
};
|
||||||
|
g = Neutr};
|
||||||
|
Fish = {s = table {
|
||||||
|
Sg => "риба";
|
||||||
|
Pl => "риби"
|
||||||
|
};
|
||||||
|
g = Fem};
|
||||||
|
Pizza = {s = table {
|
||||||
|
Sg => "пица";
|
||||||
|
Pl => "пици"
|
||||||
|
};
|
||||||
|
g = Fem};
|
||||||
|
Very qual = {s = \\g => "многу" ++ qual.s ! g};
|
||||||
|
Fresh = {s = table {
|
||||||
|
ASg Masc => "свеж";
|
||||||
|
ASg Fem => "свежа";
|
||||||
|
ASg Neutr => "свежо";
|
||||||
|
APl => "свежи"
|
||||||
|
}};
|
||||||
|
Warm = {s = table {
|
||||||
|
ASg Masc => "топол";
|
||||||
|
ASg Fem => "топла";
|
||||||
|
ASg Neutr => "топло";
|
||||||
|
APl => "топли"
|
||||||
|
}};
|
||||||
|
Italian = {s = table {
|
||||||
|
ASg Masc => "италијански";
|
||||||
|
ASg Fem => "италијанска";
|
||||||
|
ASg Neutr => "италијанско";
|
||||||
|
APl => "италијански"
|
||||||
|
}};
|
||||||
|
Expensive = {s = table {
|
||||||
|
ASg Masc => "скап";
|
||||||
|
ASg Fem => "скапа";
|
||||||
|
ASg Neutr => "скапо";
|
||||||
|
APl => "скапи"
|
||||||
|
}};
|
||||||
|
Delicious = {s = table {
|
||||||
|
ASg Masc => "вкусен";
|
||||||
|
ASg Fem => "вкусна";
|
||||||
|
ASg Neutr => "вкусно";
|
||||||
|
APl => "вкусни"
|
||||||
|
}};
|
||||||
|
Boring = {s = table {
|
||||||
|
ASg Masc => "здодевен"; -- not sure
|
||||||
|
ASg Fem => "здодевна"; -- not sure
|
||||||
|
ASg Neutr => "здодевно"; -- not sure
|
||||||
|
APl => "здодевни" -- not sure
|
||||||
|
}};
|
||||||
|
|
||||||
|
param
|
||||||
|
Gender = Masc | Fem | Neutr;
|
||||||
|
Number = Sg | Pl;
|
||||||
|
Agr = ASg Gender | APl;
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user