1
0
forked from GitHub/gf-core

extensions to DictEng and addition of parallel DictEngBul which is partly imported from Apertium

This commit is contained in:
kr.angelov
2012-06-20 09:06:59 +00:00
parent 983c72ba66
commit 87818d4404
12 changed files with 43517 additions and 159 deletions

View File

@@ -13,7 +13,8 @@ open ParadigmsBul, Prelude in {
flags
optimize=values ; coding=cp1251;
lin aba_N = mkN041 "àáà" ;
lin
aba_N = mkN041 "àáà" ;
abad_zj_ijski_A = mkA078 "àáàäæèéñêè" ;
abad_zj_ijstvo_N = mkN054 "àáàäæèéñòâî" ;
abad_zj_i_ja__N = mkN039 "àáàäæèÿ" ;

File diff suppressed because it is too large Load Diff

View File

@@ -40,8 +40,8 @@ oper
--2 Verbs
mkVerb : (_,_,_,_,_,_,_,_,_:Str) -> VTable =
\cheta,chete,chetoh,chetqh,chel,chetql,cheten,chetqst,cheti ->
mkVerb : (_,_,_,_,_,_,_,_,_,_:Str) -> VTable =
\cheta,chete,chetoh,chetqh,chel,chetql,cheten,chetqst,cheti,chetene ->
table {
VPres Sg P1 => cheta;
VPres Sg P2 => chete + "ø";
@@ -97,6 +97,12 @@ oper
chet + "è" => chet + "åòå";
ela => ela + "òå"
};
VNoun nform => let v0 = init chetene
in (mkNoun (v0+"å")
(v0+"èÿ")
(v0+"èÿ")
(v0+"å")
ANeut).s ! nform;
VGerund => case chete of {
rabot + "è" => rabot + "åéêè";
_ => chete + "éêè"

View File

@@ -56,6 +56,12 @@ oper
actionV : VTable -> VTable -> V ;
actionV imperf perf = {
s = table {Imperf=>imperf; Perf=>perf};
n = let v0 = init (imperf ! (VImperfect Sg P1)) + "í"
in (mkNoun (v0+"ĺ")
(v0+"č˙")
(v0+"č˙")
(v0+"ĺ")
ANeut).s;
vtype = VNormal;
lock_V=<>
} ;
@@ -63,6 +69,12 @@ oper
stateV : VTable -> V ;
stateV vtable = {
s = \\_=>vtable;
n = let v0 = init (vtable ! (VImperfect Sg P1)) + "í"
in (mkNoun (v0+"ĺ")
(v0+"č˙")
(v0+"č˙")
(v0+"ĺ")
ANeut).s;
vtype = VNormal;
lock_V=<>
} ;

View File

@@ -931,7 +931,8 @@ oper
(v0+"áčë")
(v0+"áčë")
(v0+"-")
(v0+"-")
(v0+"-")
(v0+"áúäč")
(v0+"á˙íĺ") ;
mkV143 : Str -> VTable ;
mkV143 base = let v0 = tk 3 base
@@ -942,7 +943,8 @@ oper
(v0+"čë")
(v0+"úäĺë")
(v0+"-")
(v0+"úäĺů")
(v0+"úäĺů")
(v0+"úäč")
(v0+"úäĺíĺ") ;
mkV144 : Str -> VTable ;
mkV144 base = let v0 = tk 1 base
@@ -953,7 +955,8 @@ oper
(v0+"˙ë")
(v0+"˙ë")
(v0+"-")
(v0+"-")
(v0+"-")
(v0+"-")
(v0+"˙íĺ") ;
mkV145 : Str -> VTable ;
mkV145 base = let v0 = tk 2 base;
@@ -965,7 +968,8 @@ oper
(v0+"ë")
(v0+v1+"˙ë")
(v0+v1+"ĺí")
(v0+v1+"˙ů")
(v0+v1+"˙ů")
(v0+v1+"č")
(v0+v1+"ĺíĺ") ;
mkV145a : Str -> VTable ;
mkV145a base = let v0 = tk 3 base;
@@ -977,7 +981,8 @@ oper
(v0+v1+"ńúë")
(v0+v1+"ń˙ë")
(v0+v1+"ńĺí")
(v0+v1+"ń˙ů")
(v0+v1+"ń˙ů")
(v0+v1+"ńč")
(v0+v1+"ń˙íĺ") ;
mkV145b : Str -> VTable ;
mkV145b base = let v0 = tk 2 base
@@ -988,7 +993,8 @@ oper
(v0+"úë")
(v0+"ň˙ë")
(v0+"-")
(v0+"ň˙ů")
(v0+"ň˙ů")
(v0+"ňč")
(v0+"ň˙íĺ") ;
mkV146 : Str -> VTable ;
mkV146 base = let v0 = tk 2 base
@@ -999,7 +1005,8 @@ oper
(v0+"řúë")
(v0+"äĺë")
(v0+"-")
(v0+"-")
(v0+"-")
(v0+"äč")
(v0+"äĺíĺ") ;
mkV146a : Str -> VTable ;
mkV146a base = let v0 = tk 3 base
@@ -1010,7 +1017,8 @@ oper
(v0+"řúë")
(v0+"éäĺë")
(v0+"-")
(v0+"-")
(v0+"-")
(v0+"éäč")
(v0+"éäĺíĺ") ;
mkV147 : Str -> VTable ;
mkV147 base = let v0 = tk 3 base
@@ -1021,7 +1029,8 @@ oper
(v0+"˙çúë")
(v0+"ĺçĺë")
(v0+"-")
(v0+"-")
(v0+"-")
(v0+"ĺç")
(v0+"ĺçĺíĺ") ;
mkV148 : Str -> VTable ;
mkV148 base = let v0 = tk 2 base
@@ -1032,7 +1041,8 @@ oper
(v0+"ęúë")
(v0+"÷ĺë")
(v0+"÷ĺí")
(v0+"÷ŕů")
(v0+"÷ŕů")
(v0+"÷č")
(v0+"÷ĺíĺ") ;
mkV149 : Str -> VTable ;
mkV149 base = let v0 = tk 3 base
@@ -1043,7 +1053,8 @@ oper
(v0+"˙ęúë")
(v0+"ĺ÷ĺë")
(v0+"ĺ÷ĺí")
(v0+"-")
(v0+"-")
(v0+"ĺ÷č")
(v0+"ĺ÷ĺíĺ") ;
mkV150 : Str -> VTable ;
mkV150 base = let v0 = tk 1 base
@@ -1054,7 +1065,8 @@ oper
(v0+"˙ë")
(v0+"˙ë")
(v0+"˙í")
(v0+"-")
(v0+"-")
(v0+"č")
(v0+"˙íĺ") ;
mkV150a : Str -> VTable ;
mkV150a base = let v0 = tk 1 base
@@ -1065,7 +1077,8 @@ oper
(v0+"˙ë")
(v0+"˙ë")
(v0+"-")
(v0+"-")
(v0+"-")
(v0+"č")
(v0+"˙íĺ") ;
mkV151 : Str -> VTable ;
mkV151 base = let v0 = tk 1 base
@@ -1076,7 +1089,8 @@ oper
(v0+"ŕë")
(v0+"˙ë")
(v0+"˙ů")
(v0+"ŕí")
(v0+"ŕí")
(v0+"č")
(v0+"˙íĺ") ;
mkV152 : Str -> VTable ;
mkV152 base = let v0 = tk 1 base
@@ -1087,7 +1101,8 @@ oper
(v0+"ŕë")
(v0+"ĺë")
(v0+"ŕň")
(v0+"-")
(v0+"-")
(v0+"č")
(v0+"ĺíĺ") ;
mkV152a : Str -> VTable ;
mkV152a base = let v0 = tk 4 base
@@ -1098,7 +1113,8 @@ oper
(v0+"˙ăíŕë")
(v0+"˙ăíĺë")
(v0+"˙ăíŕň")
(v0+"-")
(v0+"-")
(v0+"ĺăíč")
(v0+"˙ăíĺíĺ") ;
mkV153 : Str -> VTable ;
mkV153 base = let v0 = tk 3 base
@@ -1109,7 +1125,8 @@ oper
(v0+"˙íŕë")
(v0+"ĺíĺë")
(v0+"˙íŕň")
(v0+"-")
(v0+"-")
(v0+"ĺíč")
(v0+"ĺíĺíĺ") ;
mkV154 : Str -> VTable ;
mkV154 base = let v0 = tk 1 base
@@ -1120,7 +1137,8 @@ oper
(v0+"ŕë")
(v0+"ĺë")
(v0+"ŕí")
(v0+"ĺů")
(v0+"ĺů")
(v0+"č")
(v0+"ĺíĺ") ;
mkV155 : Str -> VTable ;
mkV155 base = let v0 = tk 2 base
@@ -1131,7 +1149,8 @@ oper
(v0+"ęŕë")
(v0+"÷ĺë")
(v0+"-")
(v0+"÷ĺů")
(v0+"÷ĺů")
(v0+"÷č")
(v0+"÷ĺíĺ") ;
mkV156 : Str -> VTable ;
mkV156 base = let v0 = tk 2 base
@@ -1142,7 +1161,8 @@ oper
(v0+"çŕë")
(v0+"ćĺë")
(v0+"çŕí")
(v0+"-")
(v0+"-")
(v0+"ćč")
(v0+"ćĺíĺ") ;
mkV157 : Str -> VTable ;
mkV157 base = let v0 = tk 3 base
@@ -1153,7 +1173,8 @@ oper
(v0+"˙çŕë")
(v0+"ĺćĺë")
(v0+"˙çŕí")
(v0+"ĺćĺů")
(v0+"ĺćĺů")
(v0+"ĺćč")
(v0+"ĺćĺíĺ") ;
mkV158 : Str -> VTable ;
mkV158 base = let v0 = tk 2 base
@@ -1164,7 +1185,8 @@ oper
(v0+"ăŕë")
(v0+"ćĺë")
(v0+"ăŕí")
(v0+"ćĺů")
(v0+"ćĺů")
(v0+"ćč")
(v0+"ćĺíĺ") ;
mkV159 : Str -> VTable ;
mkV159 base = let v0 = tk 2 base
@@ -1175,7 +1197,8 @@ oper
(v0+"ńŕë")
(v0+"řĺë")
(v0+"ńŕí")
(v0+"řĺů")
(v0+"řĺů")
(v0+"řč")
(v0+"řĺíĺ") ;
mkV160 : Str -> VTable ;
mkV160 base = let v0 = tk 2 base
@@ -1186,7 +1209,8 @@ oper
(v0+"˙ë")
(v0+"ĺĺë")
(v0+"˙í")
(v0+"ĺĺů")
(v0+"ĺĺů")
(v0+"ĺé")
(v0+"ĺĺíĺ") ;
mkV160a : Str -> VTable ;
mkV160a base = let v0 = tk 2 base
@@ -1197,7 +1221,8 @@ oper
(v0+"ŕë")
(v0+"ĺĺë")
(v0+"ŕí")
(v0+"ĺĺů")
(v0+"ĺĺů")
(v0+"ĺé")
(v0+"ĺĺíĺ") ;
mkV161 : Str -> VTable ;
mkV161 base = let v0 = tk 1 base
@@ -1208,7 +1233,8 @@ oper
(v0+"ë")
(v0+"ĺë")
(v0+"í")
(v0+"ĺů")
(v0+"ĺů")
(v0+"é")
(v0+"ĺíĺ") ;
mkV161a : Str -> VTable ;
mkV161a base = let v0 = tk 1 base
@@ -1219,7 +1245,8 @@ oper
(v0+"ë")
(v0+"ĺë")
(v0+"ň")
(v0+"ĺů")
(v0+"ĺů")
(v0+"é")
(v0+"ĺíĺ") ;
mkV162 : Str -> VTable ;
mkV162 base = let v0 = tk 1 base
@@ -1230,7 +1257,8 @@ oper
(v0+"˙ë")
(v0+"ĺë")
(v0+"-")
(v0+"ĺů")
(v0+"ĺů")
(v0+"é")
(v0+"ĺíĺ") ;
mkV163 : Str -> VTable ;
mkV163 base = let v0 = tk 1 base
@@ -1241,7 +1269,8 @@ oper
(v0+"ë")
(v0+"ĺë")
(v0+"ň")
(v0+"ĺů")
(v0+"ĺů")
(v0+"é")
(v0+"ĺíĺ") ;
mkV164 : Str -> VTable ;
mkV164 base = let v0 = tk 2 base
@@ -1252,7 +1281,8 @@ oper
(v0+"˙ë")
(v0+"ĺĺë")
(v0+"˙ň")
(v0+"ĺĺů")
(v0+"ĺĺů")
(v0+"ĺé")
(v0+"ĺĺíĺ") ;
mkV165 : Str -> VTable ;
mkV165 base = let v0 = tk 1 base
@@ -1263,7 +1293,8 @@ oper
(v0+"-")
(v0+"ĺë")
(v0+"-")
(v0+"ĺů")
(v0+"ĺů")
(v0+"č")
(v0+"ĺíĺ") ;
mkV166 : Str -> VTable ;
mkV166 base = let v0 = tk 2 base
@@ -1274,7 +1305,8 @@ oper
(v0+"ăúë")
(v0+"ćĺë")
(v0+"-")
(v0+"ćĺů")
(v0+"ćĺů")
(v0+"-")
(v0+"ćĺíĺ") ;
mkV167 : Str -> VTable ;
mkV167 base = let v0 = tk 2 base
@@ -1285,7 +1317,8 @@ oper
(v0+"ęŕë")
(v0+"÷ĺë")
(v0+"ęŕí")
(v0+"÷ĺů")
(v0+"÷ĺů")
(v0+"÷č")
(v0+"÷ĺíĺ") ;
mkV168 : Str -> VTable ;
mkV168 base = let v0 = tk 1 base
@@ -1296,7 +1329,8 @@ oper
(v0+"ë")
(v0+"ä˙ë")
(v0+"äĺí")
(v0+"-")
(v0+"-")
(v0+"é")
(v0+"ä˙íĺ") ;
mkV169 : Str -> VTable ;
mkV169 base = let v0 = tk 1 base
@@ -1307,7 +1341,8 @@ oper
(v0+"ë")
(v0+"ä˙ë")
(v0+"äĺí")
(v0+"äĺů")
(v0+"äĺů")
(v0+"ć")
(v0+"ä˙íĺ") ;
mkV170 : Str -> VTable ;
mkV170 base = let v0 = tk 3 base
@@ -1318,7 +1353,8 @@ oper
(v0+"đŕë")
(v0+"ĺđ˙ë")
(v0+"đŕí")
(v0+"ĺđ˙ů")
(v0+"ĺđ˙ů")
(v0+"ĺđč")
(v0+"ĺđ˙íĺ") ;
mkV171 : Str -> VTable ;
mkV171 base = let v0 = tk 2 base
@@ -1329,7 +1365,8 @@ oper
(v0+"ë")
(v0+"ěĺë")
(v0+"ň")
(v0+"-")
(v0+"-")
(v0+"ěč")
(v0+"ěĺíĺ") ;
mkV172 : Str -> VTable ;
mkV172 base = let v0 = tk 4 base
@@ -1340,7 +1377,8 @@ oper
(v0+"ëĺë")
(v0+"úëíĺë")
(v0+"úëíŕň")
(v0+"úëíĺů")
(v0+"úëíĺů")
(v0+"úëíč")
(v0+"úëíĺíĺ") ;
mkV173 : Str -> VTable ;
mkV173 base = let v0 = tk 1 base
@@ -1351,7 +1389,8 @@ oper
(v0+"čë")
(v0+"ĺë")
(v0+"ĺí")
(v0+"ĺů")
(v0+"ĺů")
(v0+"č")
(v0+"ĺíĺ") ;
mkV174 : Str -> VTable ;
mkV174 base = let v0 = tk 1 base
@@ -1362,7 +1401,8 @@ oper
(v0+"čë")
(v0+"˙ë")
(v0+"ĺí")
(v0+"˙ů")
(v0+"˙ů")
(v0+"č")
(v0+"˙íĺ") ;
mkV175 : Str -> VTable ;
mkV175 base = let v0 = tk 1 base
@@ -1373,7 +1413,8 @@ oper
(v0+"čë")
(v0+"˙ë")
(v0+"ĺí")
(v0+"˙ů")
(v0+"˙ů")
(v0+"é")
(v0+"ĺíĺ") ;
mkV176 : Str -> VTable ;
mkV176 base = let v0 = tk 1 base
@@ -1384,7 +1425,8 @@ oper
(v0+"čë")
(v0+"ĺë")
(v0+"ĺí")
(v0+"ĺů")
(v0+"ĺů")
(v0+"č")
(v0+"ĺíĺ") ;
mkV177 : Str -> VTable ;
mkV177 base = let v0 = tk 1 base
@@ -1395,7 +1437,8 @@ oper
(v0+"˙ë")
(v0+"˙ë")
(v0+"˙í")
(v0+"˙ů")
(v0+"˙ů")
(v0+"č")
(v0+"ĺíĺ") ;
mkV178 : Str -> VTable ;
mkV178 base = let v0 = tk 1 base
@@ -1406,7 +1449,8 @@ oper
(v0+"ŕë")
(v0+"ĺë")
(v0+"-")
(v0+"ŕů")
(v0+"ŕů")
(v0+"č")
(v0+"ĺíĺ") ;
mkV179 : Str -> VTable ;
mkV179 base = let v0 = tk 4 base
@@ -1417,7 +1461,8 @@ oper
(v0+"úđćŕë")
(v0+"úđćĺë")
(v0+"úđćŕí")
(v0+"úđćŕů")
(v0+"úđćŕů")
(v0+"đúć")
(v0+"úđćĺíĺ") ;
mkV180 : Str -> VTable ;
mkV180 base = let v0 = tk 1 base
@@ -1428,7 +1473,8 @@ oper
(v0+"˙ë")
(v0+"˙ë")
(v0+"-")
(v0+"˙ů")
(v0+"˙ů")
(v0+"é")
(v0+"˙íĺ") ;
mkV181 : Str -> VTable ;
mkV181 base = let v0 = tk 2 base
@@ -1439,7 +1485,8 @@ oper
(v0+"ä˙ë")
(v0+"äĺë")
(v0+"ä˙í")
(v0+"-")
(v0+"-")
(v0+"ć")
(v0+"äĺíĺ") ;
mkV182 : Str -> VTable ;
mkV182 base = let v0 = tk 1 base
@@ -1450,7 +1497,8 @@ oper
(v0+"ŕë")
(v0+"˙ë")
(v0+"-")
(v0+"˙ů")
(v0+"˙ů")
(v0+"č")
(v0+"ŕíĺ") ;
mkV183 : Str -> VTable ;
mkV183 base = let v0 = tk 3 base
@@ -1461,7 +1509,8 @@ oper
(v0+"˙çŕë")
(v0+"ĺćĺë")
(v0+"˙çŕí")
(v0+"ĺćĺů")
(v0+"ĺćĺů")
(v0+"ĺćč")
(v0+"ĺćĺíĺ") ;
mkV184 : Str -> VTable ;
mkV184 base = let v0 = tk 3 base
@@ -1472,7 +1521,8 @@ oper
(v0+"ë˙ë")
(v0+"ĺëĺë")
(v0+"ë˙í")
(v0+"ĺëĺů")
(v0+"ĺëĺů")
(v0+"ĺëč")
(v0+"ĺëĺíĺ") ;
mkV185 : Str -> VTable ;
mkV185 base = let v0 = tk 3 base
@@ -1483,7 +1533,8 @@ oper
(v0+"ëŕë")
(v0+"îëĺë")
(v0+"ëŕí")
(v0+"îëĺů")
(v0+"îëĺů")
(v0+"îëč")
(v0+"îëĺíĺ") ;
mkV186 : Str -> VTable ;
mkV186 base = let v0 = tk 2 base
@@ -1494,7 +1545,8 @@ oper
(v0+"ŕë")
(v0+"ŕë")
(v0+"ŕí")
(v0+"ŕů")
(v0+"ŕů")
(v0+"ŕé")
(v0+"ŕíĺ") ;
mkV187 : Str -> VTable ;
mkV187 base = let v0 = tk 2 base
@@ -1505,7 +1557,8 @@ oper
(v0+"˙ë")
(v0+"˙ë")
(v0+"˙í")
(v0+"˙ů")
(v0+"˙ů")
(v0+"˙é")
(v0+"˙íĺ") ;
mkV188 : Str -> VTable ;
mkV188 base = let v0 = tk 2 base
@@ -1516,7 +1569,8 @@ oper
(v0+"ŕë")
(v0+"ŕë")
(v0+"ŕí")
(v0+"ŕů")
(v0+"ŕů")
(v0+"ŕé")
(v0+"ŕíĺ") ;
adjAdv : A -> Str -> A =

View File

@@ -0,0 +1,52 @@
--# -path=alltenses:../english
concrete ParseEngBul of ParseEngAbs =
TenseX - [IAdv, CAdv],
CatBul,
NounBul - [PPartNP],
AdjectiveBul,
NumeralBul,
SymbolBul [PN, Symb, MkSymb, SymbPN],
ConjunctionBul,
VerbBul - [SlashV2V, PassV2, UseCopula],
AdverbBul,
PhraseBul,
SentenceBul,
QuestionBul,
RelativeBul,
IdiomBul [NP, VP, Tense, Cl, ProgrVP, ExistNP],
ExtraBul [NP, Quant, VPSlash, VP, Tense, GenNP, PassVPSlash,
Temp, Pol, Conj, VPS, ListVPS, S, MkVPS, BaseVPS, ConsVPS, ConjVPS, PredVPS,
VPI, VPIForm, VPIInf, VPIPresPart, ListVPI, VV, MkVPI, BaseVPI, ConsVPI, ConjVPI, ComplVPIVV],
DictEngBul **
open ResBul, Prelude in {
flags
literal=Symb ;
lin
GerundN v = {
s = \\nform => v.s ! Imperf ! VNoun nform ;
g = ANeut
} ;
GerundAP v = {
s = \\aform => v.s ! Imperf ! VPresPart aform ;
adv = v.s ! Imperf ! VPresPart (ASg Neut Indef);
isPre = True
} ;
PastPartAP v = {
s = \\aform => v.s ! Perf ! VPassive aform ;
adv = v.s ! Perf ! VPassive (ASg Neut Indef);
isPre = True
} ;
UseQuantPN q pn = { s = table {
RObj Dat => "на" ++ pn.s;
_ => pn.s
} ;
a = {gn = GSg pn.g; p = P3}
} ;
}

View File

@@ -57,6 +57,7 @@ resource ResBul = ParamX ** open Prelude in {
| VPassive AForm
| VPresPart AForm
| VImperative Number
| VNoun NForm
| VGerund
;
@@ -268,6 +269,7 @@ resource ResBul = ParamX ** open Prelude in {
VPresPart aform => regAdjective "áúäåù" ! aform ;
VImperative Sg => "áúäè" ;
VImperative Pl => "áúäåòå" ;
VNoun _ => "";
VGerund => "áèäåéêè"
} ;
@@ -295,6 +297,7 @@ resource ResBul = ParamX ** open Prelude in {
VPresPart aform => regAdjective "áúäåù" ! aform ;
VImperative Sg => "áúäè" ;
VImperative Pl => "áúäåòå" ;
VNoun _ => "";
VGerund => "áúäåéêè"
} ;

View File

@@ -63,6 +63,7 @@ concrete StructuralBul of Structural = CatBul **
VPresPart _ => "òðÿáâàëî" ;
VImperative Sg => "òðÿáâàé" ;
VImperative Pl => "òðÿáâàéòå" ;
VNoun _ => "òðÿáâàíå" ;
VGerund => "òðÿáâàéêè"
} ;
vtype=VNormal ;