FoodsPes and Sofy in status

This commit is contained in:
aarne
2010-12-22 14:47:54 +00:00
parent 060f4e1866
commit a8e01164e8
4 changed files with 82 additions and 65 deletions

View File

@@ -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"};
}

View 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 => "هستند"};
}

View File

@@ -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>

View File

@@ -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