mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-09 04:59:31 -06:00
fixes in FoodsUrd and DemoRon compilation
This commit is contained in:
@@ -1,31 +1,53 @@
|
||||
concrete FoodsUrd of Foods = {
|
||||
flags coding = utf8 ;
|
||||
param Number = Sg | Pl ;
|
||||
|
||||
oper coupla : Number -> Str =\n -> case n of {Sg => "ہے" ; Pl => "ہیں"};
|
||||
|
||||
|
||||
lincat
|
||||
Comment, Quality = {s : Str} ;
|
||||
Item = {s: Str ; n: Number};
|
||||
Kind = {s: Number => Str};
|
||||
|
||||
lin
|
||||
Pred item quality = {s = item.s ++ quality.s ++ coupla item.n} ;
|
||||
This kind = {s = "یھ" ++ kind.s ! Sg; n= Sg} ;
|
||||
These kind = {s = "یھ" ++ kind.s ! Pl; n = Pl} ;
|
||||
That kind = {s = "وہ" ++ kind.s ! Sg; n= Sg} ;
|
||||
Those kind = {s = "وہ" ++ kind.s ! Pl; n=Pl} ;
|
||||
Mod quality kind = {s = \\n => quality.s ++ kind.s ! n} ;
|
||||
Wine = {s = table { Sg => "شراب" ; Pl => "شرابیں"} };
|
||||
Cheese = {s = table { Sg => "پنیر" ; Pl => "پنیریں"} };
|
||||
Fish = {s = table { Sg => "مچھلی" ; Pl => "مچھلیاں"} };
|
||||
Pizza = {s = table { Sg => "پیزہ" ; Pl => "پیزے"} };
|
||||
Very quality = {s = "بہت" ++ quality.s} ;
|
||||
Fresh = {s = "تازہ"} ;
|
||||
Warm = {s = "گرم"} ;
|
||||
Italian = {s = "اٹا لوی"} ;
|
||||
Expensive = {s = "مہنگا"} ;
|
||||
Delicious = {s = "مزیدار"} ;
|
||||
Boring = {s = "فضول"} ;
|
||||
}
|
||||
-- (c) 2009 Shafqat Virk under LGPL
|
||||
|
||||
concrete FoodsUrd of Foods = {
|
||||
|
||||
flags coding=utf8 ;
|
||||
|
||||
|
||||
param Number = Sg | Pl ;
|
||||
param Gender = Masc | Fem;
|
||||
|
||||
oper coupla : Number -> Str =\n -> case n of {Sg => "ہے" ; Pl => "ہیں"};
|
||||
|
||||
|
||||
lincat
|
||||
Comment = {s : Str} ;
|
||||
Item = {s: Str ; n: Number ; g:Gender};
|
||||
Kind = {s: Number => Str ; g:Gender};
|
||||
Quality = {s: Gender => Number => Str};
|
||||
|
||||
lin
|
||||
Pred item quality = {s = item.s ++ quality.s ! item.g ! item.n ++ coupla item.n} ;
|
||||
This kind = {s = "یھ" ++ kind.s ! Sg; n= Sg ; g = kind.g } ;
|
||||
These kind = {s = "یھ" ++ kind.s ! Pl; n = Pl ; g = kind.g} ;
|
||||
That kind = {s = "وہ" ++ kind.s ! Sg; n= Sg ; g = kind.g} ;
|
||||
Those kind = {s = "وہ" ++ kind.s ! Pl; n=Pl ; g = kind.g} ;
|
||||
Mod quality kind = {s = \\n => quality.s ! kind.g ! n ++ kind.s ! n ; g = kind.g};
|
||||
Wine = {s = table { Sg => "شراب" ; Pl => "شرابیں"} ; g = Fem};
|
||||
Cheese = {s = table { Sg => "پنیر" ; Pl => "پنیریں"} ; g = Fem};
|
||||
Fish = {s = table { Sg => "مچھلی" ; Pl => "مچھلیاں"} ; g = Fem};
|
||||
Pizza = {s = table { Sg => "پیزہ" ; Pl => "پیزے"} ; g = Masc};
|
||||
Very quality = {s = \\g,n => "بہت" ++ quality.s ! g ! n} ;
|
||||
Fresh = regAdj "تازہ" ;
|
||||
Warm = regAdj "گرم" ;
|
||||
Italian = regAdj "اٹا لوی" ;
|
||||
Expensive = regAdj "مہنگا" ;
|
||||
Delicious = regAdj "مزیدار" ;
|
||||
Boring = regAdj "فضول" ;
|
||||
|
||||
oper
|
||||
regAdj : Str -> {s: Gender => Number => Str} = \a -> case a of {
|
||||
x + "ا" => mkAdj a (x+"ے") (x+"ی");
|
||||
_ => mkAdj a a a
|
||||
};
|
||||
mkAdj : Str -> Str -> Str -> {s: Gender => Number => Str} = \s,p,f -> {
|
||||
s = table {
|
||||
Masc => table {
|
||||
Sg => s;
|
||||
Pl => p
|
||||
};
|
||||
Fem => \\_ => f
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -45,7 +45,7 @@ demo:
|
||||
gf -make -name=Demo1 demo/DemoDan.gf demo/DemoDut.gf demo/DemoEng.gf
|
||||
gf -make -name=Demo2 demo/DemoFin.gf +RTS -K48M
|
||||
gf -make -name=Demo3 demo/DemoFre.gf demo/DemoGer.gf demo/DemoIta.gf demo/DemoNor.gf demo/DemoPol.gf +RTS -K48M
|
||||
gf -make -name=Demo4 -parser=off demo/DemoRon.gf +RTS -K48M
|
||||
gf -make -name=Demo4 demo/DemoRon.gf +RTS -K48M
|
||||
gf -make -name=Demo5 demo/DemoRus.gf demo/DemoSpa.gf demo/DemoSwe.gf
|
||||
gf -make Demo0.pgf Demo1.pgf Demo2.pgf Demo3.pgf Demo4.pgf Demo5.pgf
|
||||
rm Demo?.pgf
|
||||
|
||||
Reference in New Issue
Block a user