mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-24 03:52:50 -06:00
FoodsPes and Sofy in status
This commit is contained in:
@@ -1,64 +0,0 @@
|
|||||||
-- (c) 2009 Sedigheh Moradi under LGPL
|
|
||||||
|
|
||||||
concrete FoodsFas of Foods = {
|
|
||||||
|
|
||||||
lincat
|
|
||||||
Comment = {s : Str} ;
|
|
||||||
Quality = {s : Add => Str; prep : Str} ;
|
|
||||||
Kind = {s : Add => Number => Str ; prep : Str};
|
|
||||||
Item = {s : Str ; n : Number};
|
|
||||||
lin
|
|
||||||
Pred item quality = {s = item.s ++ quality.s ! Indep ++ copula ! item.n} ;
|
|
||||||
This = det Sg "in" ;
|
|
||||||
That = det Sg "aan" ;
|
|
||||||
These = det Pl "in" ;
|
|
||||||
Those = det Pl "aan" ;
|
|
||||||
|
|
||||||
Mod quality kind = {s = \\a,n => kind.s ! Attr ! n ++ kind.prep ++ quality.s ! a ;
|
|
||||||
prep = quality.prep
|
|
||||||
};
|
|
||||||
Wine = regN "sharaab" ;
|
|
||||||
Cheese = regN "panir" ;
|
|
||||||
Fish = regN "mahi" ;
|
|
||||||
Pizza = regN "pitza" ;
|
|
||||||
Very a = {s = \\at => "xeili" ++ a.s ! at ; prep = a.prep} ;
|
|
||||||
Fresh = adj "taze" ;
|
|
||||||
Warm = adj "garm" ;
|
|
||||||
Italian = adj "Italia'i" ;
|
|
||||||
Expensive = adj "geraan" ;
|
|
||||||
Delicious = adj "laziz" ;
|
|
||||||
Boring = adj "keselkonande" ;
|
|
||||||
|
|
||||||
param
|
|
||||||
Number = Sg | Pl ;
|
|
||||||
Add = Indep | Attr ;
|
|
||||||
oper
|
|
||||||
det : Number -> Str -> {s: Add => Number => Str ; prep : Str} -> {s : Str ; n: Number} =
|
|
||||||
\n,det,noun -> {s = det ++ noun.s ! Indep ! n ; n = n };
|
|
||||||
|
|
||||||
noun : (x1,_,_,x4 : Str) -> {s : Add => Number => Str ; prep : Str} = \pitza, pitzaye, pitzaha,pr ->
|
|
||||||
{s = \\a,n => case <a,n> of
|
|
||||||
{<Indep,Sg> => pitza ; <Indep,Pl> => pitzaha ;
|
|
||||||
<Attr,Sg> =>pitzaye ; <Attr,Pl> => pitzaha + "ye" };
|
|
||||||
prep = pr
|
|
||||||
};
|
|
||||||
|
|
||||||
regN : Str -> {s: Add => Number => Str ; prep : Str} = \mard ->
|
|
||||||
case mard of
|
|
||||||
{ _ + ("a"|"e"|"i"|"o"|"u") => noun mard (mard+"ye") (mard + "ha") "";
|
|
||||||
_ => noun mard mard (mard + "ha") "e"
|
|
||||||
};
|
|
||||||
|
|
||||||
adj : Str -> {s : Add => Str; prep : Str} = \taze ->
|
|
||||||
case taze of
|
|
||||||
{ _ + ("a"|"e"|"i"|"o"|"u") => mkAdj taze (taze+"ye") "" ;
|
|
||||||
_ => mkAdj taze taze "e"
|
|
||||||
};
|
|
||||||
|
|
||||||
mkAdj : Str -> Str -> Str -> {s : Add => Str; prep : Str} = \taze, tazeye, pr ->
|
|
||||||
{s = table {Indep => taze;
|
|
||||||
Attr => tazeye};
|
|
||||||
prep = pr
|
|
||||||
};
|
|
||||||
copula : Number => Str = table {Sg => "ast"; Pl => "hastand"};
|
|
||||||
}
|
|
||||||
65
contrib/summerschool/foods/FoodsPes.gf
Normal file
65
contrib/summerschool/foods/FoodsPes.gf
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
concrete FoodsPes of Foods = {
|
||||||
|
|
||||||
|
flags optimize=noexpand ; coding=utf8 ;
|
||||||
|
|
||||||
|
lincat
|
||||||
|
Comment = {s : Str} ;
|
||||||
|
Quality = {s : Add => Str; prep : Str} ;
|
||||||
|
Kind = {s : Add => Number => Str ; prep : Str};
|
||||||
|
Item = {s : Str ; n : Number};
|
||||||
|
lin
|
||||||
|
Pred item quality = {s = item.s ++ quality.s ! Indep ++ copula ! item.n} ;
|
||||||
|
This = det Sg "این" ;
|
||||||
|
That = det Sg "آن" ;
|
||||||
|
These = det Pl "این" ;
|
||||||
|
Those = det Pl "آن" ;
|
||||||
|
|
||||||
|
Mod quality kind = {s = \\a,n => kind.s ! Attr ! n ++ kind.prep ++ quality.s ! a ;
|
||||||
|
prep = quality.prep
|
||||||
|
};
|
||||||
|
Wine = regN "شراب" ;
|
||||||
|
Cheese = regN "پنیر" ;
|
||||||
|
Fish = regN "ماهى" ;
|
||||||
|
Pizza = regN "پیتزا" ;
|
||||||
|
Very a = {s = \\at => "خیلی" ++ a.s ! at ; prep = a.prep} ;
|
||||||
|
Fresh = adj "تازه" ;
|
||||||
|
Warm = adj "گرم" ;
|
||||||
|
Italian = adj "ایتالیایی" ;
|
||||||
|
Expensive = adj "گران" ;
|
||||||
|
Delicious = adj "لذىذ" ;
|
||||||
|
Boring = adj "ملال آور" ; -- it must be written as ملال آور.
|
||||||
|
|
||||||
|
param
|
||||||
|
Number = Sg | Pl ;
|
||||||
|
Add = Indep | Attr ;
|
||||||
|
oper
|
||||||
|
det : Number -> Str -> {s: Add => Number => Str ; prep : Str} -> {s : Str ; n: Number} =
|
||||||
|
\n,det,noun -> {s = det ++ noun.s ! Indep ! n ; n = n };
|
||||||
|
|
||||||
|
noun : (x1,_,_,x4 : Str) -> {s : Add => Number => Str ; prep : Str} = \pytzA, pytzAy, pytzAhA,pr ->
|
||||||
|
{s = \\a,n => case <a,n> of
|
||||||
|
{<Indep,Sg> => pytzA ; <Indep,Pl> => pytzAhA ;
|
||||||
|
<Attr,Sg> =>pytzA ; <Attr,Pl> => pytzAhA + "ى" };
|
||||||
|
prep = pr
|
||||||
|
};
|
||||||
|
|
||||||
|
regN : Str -> {s: Add => Number => Str ; prep : Str} = \mrd ->
|
||||||
|
case mrd of
|
||||||
|
{ _ + ("ا"|"ه"|"ى"|"و"|"") => noun mrd (mrd+"ى") (mrd + "ها") "";
|
||||||
|
_ => noun mrd mrd (mrd + "ها") "e"
|
||||||
|
};
|
||||||
|
|
||||||
|
adj : Str -> {s : Add => Str; prep : Str} = \tAzh ->
|
||||||
|
case tAzh of
|
||||||
|
{ _ + ("ا"|"ه"|"ى"|"و"|"") => mkAdj tAzh (tAzh ++ "ى") "" ;
|
||||||
|
_ => mkAdj tAzh tAzh "ه"
|
||||||
|
};
|
||||||
|
|
||||||
|
mkAdj : Str -> Str -> Str -> {s : Add => Str; prep : Str} = \tAzh, tAzhy, pr ->
|
||||||
|
{s = table {Indep => tAzh;
|
||||||
|
Attr => tAzhy};
|
||||||
|
prep = pr
|
||||||
|
};
|
||||||
|
copula : Number => Str = table {Sg => "است"; Pl => "هستند"};
|
||||||
|
|
||||||
|
}
|
||||||
@@ -7,7 +7,7 @@
|
|||||||
<P ALIGN="center"><CENTER><H1>The Status of the GF Resource Grammar Library</H1>
|
<P ALIGN="center"><CENTER><H1>The Status of the GF Resource Grammar Library</H1>
|
||||||
<FONT SIZE="4">
|
<FONT SIZE="4">
|
||||||
<I>Aarne Ranta</I><BR>
|
<I>Aarne Ranta</I><BR>
|
||||||
20101124
|
20101222
|
||||||
</FONT></CENTER>
|
</FONT></CENTER>
|
||||||
|
|
||||||
<P>
|
<P>
|
||||||
@@ -268,6 +268,19 @@ are marked in the table
|
|||||||
<TD>*AR</TD>
|
<TD>*AR</TD>
|
||||||
</TR>
|
</TR>
|
||||||
<TR>
|
<TR>
|
||||||
|
<TD>Pes</TD>
|
||||||
|
<TD>-</TD>
|
||||||
|
<TD>-</TD>
|
||||||
|
<TD>-</TD>
|
||||||
|
<TD>-</TD>
|
||||||
|
<TD>-</TD>
|
||||||
|
<TD>-</TD>
|
||||||
|
<TD>-</TD>
|
||||||
|
<TD>-</TD>
|
||||||
|
<TD>-</TD>
|
||||||
|
<TD>*SM</TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
<TD>Pnb</TD>
|
<TD>Pnb</TD>
|
||||||
<TD>+</TD>
|
<TD>+</TD>
|
||||||
<TD>+</TD>
|
<TD>+</TD>
|
||||||
@@ -459,6 +472,7 @@ NE Nyamsuren Erdenebadrakh,
|
|||||||
NG Normunds Gruzitis,
|
NG Normunds Gruzitis,
|
||||||
RE Ramona Enache,
|
RE Ramona Enache,
|
||||||
SC Server Cimen,
|
SC Server Cimen,
|
||||||
|
SM Sofy Moradi,
|
||||||
SV Shafqat Virk,
|
SV Shafqat Virk,
|
||||||
TH Therese Söderberg
|
TH Therese Söderberg
|
||||||
</P>
|
</P>
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ are marked in the table
|
|||||||
| Lav | - | - | - | - | - | - | - | - | - | *NG
|
| Lav | - | - | - | - | - | - | - | - | - | *NG
|
||||||
| Mon | - | - | - | - | - | - | - | - | - | *NE
|
| Mon | - | - | - | - | - | - | - | - | - | *NE
|
||||||
| Nor | + | + | ++ | + | + | + | + | + | - | *AR
|
| Nor | + | + | ++ | + | + | + | + | + | - | *AR
|
||||||
|
| Pes | - | - | - | - | - | - | - | - | - | *SM
|
||||||
| Pnb | + | + | + | + | + | + | + | - | - | *SV,MH
|
| Pnb | + | + | + | + | + | + | + | - | - | *SV,MH
|
||||||
| Pol | + | + | + | + | + | + | + | - | - | IN,*AS
|
| Pol | + | + | + | + | + | + | + | - | - | IN,*AS
|
||||||
| Ron | + | + | ++ | + | + | + | + | - | - | *RE
|
| Ron | + | + | ++ | + | + | + | + | - | - | *RE
|
||||||
@@ -93,6 +94,7 @@ NE Nyamsuren Erdenebadrakh,
|
|||||||
NG Normunds Gruzitis,
|
NG Normunds Gruzitis,
|
||||||
RE Ramona Enache,
|
RE Ramona Enache,
|
||||||
SC Server Cimen,
|
SC Server Cimen,
|
||||||
|
SM Sofy Moradi,
|
||||||
SV Shafqat Virk,
|
SV Shafqat Virk,
|
||||||
TH Therese Söderberg
|
TH Therese Söderberg
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user