mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-23 01:52:50 -06:00
Chunking and other robust translation facilities in plain RGL
This commit is contained in:
67
lib/src/chunk/ChunkBul.gf
Normal file
67
lib/src/chunk/ChunkBul.gf
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
concrete ChunkBul of Chunk = CatBul, ExtensionsBul [VPS,VPI] **
|
||||||
|
ChunkFunctor - [
|
||||||
|
CN_Pl_Chunk, CN_Sg_Chunk, Conj_Chunk, IAdv_Chunk, IP_Chunk, Numeral_Nom_Chunk, SSlash_Chunk, Predet_Chunk,
|
||||||
|
emptyNP, Prep_Chunk
|
||||||
|
]
|
||||||
|
with (Syntax = SyntaxBul), (Extensions = ExtensionsBul) **
|
||||||
|
open
|
||||||
|
SyntaxBul, (E = ExtensionsBul), Prelude,
|
||||||
|
ResBul, MorphoFunsBul, (P = ParadigmsBul) in {
|
||||||
|
|
||||||
|
|
||||||
|
lin CN_Pl_Chunk, CN_Pl_Gen_Chunk = \cn -> {s = cn.s ! (NF Pl allSpecies | NFPlCount)} ;
|
||||||
|
lin CN_Sg_Chunk, CN_Sg_Gen_Chunk = \cn -> {s = cn.s ! (NF Sg allSpecies | NFSgDefNom)} ;
|
||||||
|
lin Conj_Chunk c = {s = c.s ++ linCoord ! c.conj};
|
||||||
|
lin IAdv_Chunk iadv = {s = iadv.s ! allQForm};
|
||||||
|
lin IP_Chunk ip = {s = ip.s ! (RSubj | RObj allCases | RVoc) ! allQForm};
|
||||||
|
lin Predet_Chunk predet = {s = predet.s ! allGenNum};
|
||||||
|
lin Numeral_Nom_Chunk, Numeral_Gen_Chunk = \num -> {s = num.s ! NCard allCardForm};
|
||||||
|
lin Prep_Chunk prep = prep;
|
||||||
|
|
||||||
|
lin NP_Acc_Chunk np = {s = np.s ! RObj allCases};
|
||||||
|
lin NP_Gen_Chunk np = {s = np.s ! RSubj};
|
||||||
|
|
||||||
|
oper
|
||||||
|
emptyNP : NP = SyntaxBul.mkNP (P.mkPN [] Masc) ;
|
||||||
|
|
||||||
|
|
||||||
|
lin refl_SgP1_Chunk, refl_SgP2_Chunk, refl_SgP3_Chunk, refl_PlP1_Chunk,
|
||||||
|
refl_PlP2_Chunk, refl_PlP3_Chunk =
|
||||||
|
{s = reflClitics ! allCases};
|
||||||
|
|
||||||
|
lin neg_Chunk = {s = "не"};
|
||||||
|
|
||||||
|
lin copula_Chunk = {s = auxBe ! VPres allNumber allPerson};
|
||||||
|
lin copula_neg_Chunk = {s = "не" ++ auxBe ! VPres allNumber allPerson};
|
||||||
|
lin copula_inf_Chunk = {s = auxWould ! VPres allNumber allPerson};
|
||||||
|
lin past_copula_Chunk = {s = auxBe ! VAorist allNumber allPerson};
|
||||||
|
lin past_copula_neg_Chunk = {s = "не" ++ auxBe ! VAorist allNumber allPerson};
|
||||||
|
lin future_Chunk = {s = "ще"};
|
||||||
|
lin future_neg_Chunk = {s = "не ще"};
|
||||||
|
lin cond_Chunk = {s = auxWould ! VAorist allNumber allPerson} ;
|
||||||
|
lin cond_neg_Chunk = {s = "не" ++ auxWould ! VAorist allNumber allPerson} ;
|
||||||
|
lin perfect_Chunk = {s = "*"} ;
|
||||||
|
lin perfect_neg_Chunk = {s = "не" ++ "*"} ;
|
||||||
|
lin past_perfect_Chunk = {s = "*"} ;
|
||||||
|
lin past_perfect_neg_Chunk = {s = "не" ++ "*"} ;
|
||||||
|
|
||||||
|
oper
|
||||||
|
allAForm
|
||||||
|
= ASg allGender allSpecies
|
||||||
|
| ASgMascDefNom
|
||||||
|
| APl allSpecies ;
|
||||||
|
allGender = Masc | Fem | Neut ;
|
||||||
|
allSpecies = Indef | Def ;
|
||||||
|
allCases = Acc | Dat ;
|
||||||
|
allQForm = QDir | QIndir ;
|
||||||
|
allAnimacy = Human | NonHuman ;
|
||||||
|
allCardForm =
|
||||||
|
CFMasc allSpecies allAnimacy
|
||||||
|
| CFMascDefNom allAnimacy
|
||||||
|
| CFFem allSpecies
|
||||||
|
| CFNeut allSpecies ;
|
||||||
|
allGenNum = GSg allGender | GPl ;
|
||||||
|
allNumber = Sg | Pl ;
|
||||||
|
allPerson = P1 | P2 | P3 ;
|
||||||
|
|
||||||
|
}
|
||||||
51
lib/src/chunk/ChunkChi.gf
Normal file
51
lib/src/chunk/ChunkChi.gf
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
concrete ChunkChi of Chunk = CatChi, ExtensionsChi [VPS,VPI] **
|
||||||
|
ChunkFunctor - [Numeral_Nom_Chunk, Conj_Chunk, CN_Pl_Chunk, Subj_Chunk, emptyNP, Prep_Chunk, Predet_Chunk]
|
||||||
|
with (Syntax = SyntaxChi), (Extensions = ExtensionsChi) **
|
||||||
|
open
|
||||||
|
SyntaxChi, (E = ExtensionsChi), Prelude,
|
||||||
|
ResChi, (P = ParadigmsChi) in {
|
||||||
|
|
||||||
|
oper
|
||||||
|
emptyNP : NP = mkNP [] ;
|
||||||
|
|
||||||
|
-- exceptions to functor
|
||||||
|
|
||||||
|
lin
|
||||||
|
Conj_Chunk conj = ss (conj.s ! CSent).s2 ;
|
||||||
|
Numeral_Nom_Chunk num = ss (num.s ++ ge_s) ;
|
||||||
|
CN_Pl_Chunk cn = cn ;
|
||||||
|
Subj_Chunk subj = ss (subj.prePart ++ subj.sufPart) ;
|
||||||
|
Prep_Chunk prep = ss (prep.prepPre ++ prep.prepPost) ;
|
||||||
|
Predet_Chunk predet = predet ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
lin
|
||||||
|
NP_Acc_Chunk np = np ;
|
||||||
|
NP_Gen_Chunk np = ss (np.s ++ de_s) ;
|
||||||
|
|
||||||
|
copula_inf_Chunk = ss copula_s ;
|
||||||
|
|
||||||
|
refl_SgP1_Chunk = ss reflPron ;
|
||||||
|
refl_SgP2_Chunk = ss reflPron ;
|
||||||
|
refl_SgP3_Chunk = ss reflPron ;
|
||||||
|
refl_PlP1_Chunk = ss reflPron ;
|
||||||
|
refl_PlP2_Chunk = ss reflPron ;
|
||||||
|
refl_PlP3_Chunk = ss reflPron ;
|
||||||
|
neg_Chunk = ss neg_s ;
|
||||||
|
copula_Chunk = ss copula_s ;
|
||||||
|
copula_neg_Chunk = ss (neg_s ++ copula_s) ;
|
||||||
|
past_copula_Chunk = ss "了" ;
|
||||||
|
past_copula_neg_Chunk = ss (neg_s ++ copula_s ++ "了") ;
|
||||||
|
future_Chunk = ss copula_s ; ----
|
||||||
|
future_neg_Chunk = ss (neg_s ++ copula_s) ;
|
||||||
|
cond_Chunk = ss copula_s ; ----
|
||||||
|
cond_neg_Chunk = ss (neg_s ++ copula_s) ;
|
||||||
|
perfect_Chunk = ss "了" ;
|
||||||
|
perfect_neg_Chunk = ss (neg_s ++ copula_s ++ "了") ;
|
||||||
|
past_perfect_Chunk = ss "了" ;
|
||||||
|
past_perfect_neg_Chunk = ss (neg_s ++ copula_s ++ "了") ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -4,6 +4,10 @@ concrete ChunkEng of Chunk = CatEng, ExtensionsEng [VPS,VPI] **
|
|||||||
SyntaxEng, (E = ExtensionsEng), Prelude,
|
SyntaxEng, (E = ExtensionsEng), Prelude,
|
||||||
(R = ResEng), (P = ParadigmsEng) in {
|
(R = ResEng), (P = ParadigmsEng) in {
|
||||||
|
|
||||||
|
lin
|
||||||
|
NP_Acc_Chunk np = ss (np.s ! R.NPAcc) ;
|
||||||
|
NP_Gen_Chunk np = ss (np.s ! R.NCase R.Gen) | ss (np.s ! R.NPNomPoss) ;
|
||||||
|
|
||||||
oper
|
oper
|
||||||
emptyNP = mkNP (P.mkPN []) ;
|
emptyNP = mkNP (P.mkPN []) ;
|
||||||
|
|
||||||
|
|||||||
37
lib/src/chunk/ChunkFin.gf
Normal file
37
lib/src/chunk/ChunkFin.gf
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
concrete ChunkFin of Chunk = CatFin, ExtensionsFin [VPS,VPI] **
|
||||||
|
ChunkFunctor with (Syntax = SyntaxFin), (Extensions = ExtensionsFin) **
|
||||||
|
open
|
||||||
|
SyntaxFin, (E = ExtensionsFin), Prelude,
|
||||||
|
ResFin, (P = ParadigmsFin) in {
|
||||||
|
|
||||||
|
oper
|
||||||
|
emptyNP = mkNP (lin PN {s = \\_ => []}) ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
NP_Acc_Chunk np = ss (np.s ! NPAcc) ;
|
||||||
|
NP_Gen_Chunk np = ss (np.s ! NPCase Gen) ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
copula_inf_Chunk = ss "olla" ;
|
||||||
|
|
||||||
|
refl_SgP1_Chunk = ss "itseni" ;
|
||||||
|
refl_SgP2_Chunk = ss "itsesi" ;
|
||||||
|
refl_SgP3_Chunk = ss "itse" ;
|
||||||
|
refl_PlP1_Chunk = ss "itsemme" ;
|
||||||
|
refl_PlP2_Chunk = ss "itsenne" ;
|
||||||
|
refl_PlP3_Chunk = ss "itsensä" ;
|
||||||
|
neg_Chunk = ss "ei" ;
|
||||||
|
copula_Chunk = ss "on" ;
|
||||||
|
copula_neg_Chunk = ss "ei ole" ;
|
||||||
|
past_copula_Chunk = ss "oli" ;
|
||||||
|
past_copula_neg_Chunk = ss "ei ollut" ;
|
||||||
|
future_Chunk = ss "tulee" ;
|
||||||
|
future_neg_Chunk = ss "ei tule" ;
|
||||||
|
cond_Chunk = ss "olisi" ;
|
||||||
|
cond_neg_Chunk = ss "ei olisi" ;
|
||||||
|
perfect_Chunk = ss "on" ;
|
||||||
|
perfect_neg_Chunk = ss "ei ole" ;
|
||||||
|
past_perfect_Chunk = ss "oli" ;
|
||||||
|
past_perfect_neg_Chunk = ss "ei ollut" ;
|
||||||
|
|
||||||
|
}
|
||||||
52
lib/src/chunk/ChunkFre.gf
Normal file
52
lib/src/chunk/ChunkFre.gf
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
concrete ChunkFre of Chunk = CatFre, ExtensionsFre [VPS,VPI] **
|
||||||
|
ChunkFunctor - [SSlash_Chunk]
|
||||||
|
with (Syntax = SyntaxFre), (Extensions = ExtensionsFre) **
|
||||||
|
open
|
||||||
|
SyntaxFre, (E = ExtensionsFre), Prelude,
|
||||||
|
ResFre, PhonoFre, CommonRomance, (P = ParadigmsFre) in {
|
||||||
|
|
||||||
|
lin
|
||||||
|
SSlash_Chunk s = mkUtt <lin S {s = s.s ! {g = Masc ; n = Sg}} : S> ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
NP_Acc_Chunk np = ss (np.s ! Acc).ton ;
|
||||||
|
NP_Gen_Chunk np = ss (np.s ! genitive).comp ;
|
||||||
|
|
||||||
|
oper
|
||||||
|
emptyNP = mkNP (P.mkPN []) ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
copula_inf_Chunk = ss "être" ;
|
||||||
|
|
||||||
|
refl_SgP1_Chunk = ss "moi-même" ;
|
||||||
|
refl_SgP2_Chunk = ss "toi-même" ;
|
||||||
|
refl_SgP3_Chunk = ss "lui-même" ;
|
||||||
|
refl_PlP1_Chunk = ss "nous-mêmes" ;
|
||||||
|
refl_PlP2_Chunk = ss "vous-mêmes" ;
|
||||||
|
refl_PlP3_Chunk = ss "eux-mêmes" ;
|
||||||
|
neg_Chunk = ss "non" ;
|
||||||
|
copula_Chunk = ss "est" ;
|
||||||
|
copula_neg_Chunk = ss "n'est pas" ;
|
||||||
|
past_copula_Chunk = ss "était" ;
|
||||||
|
past_copula_neg_Chunk = ss "n'était pas" ;
|
||||||
|
future_Chunk = ss "va" ;
|
||||||
|
future_neg_Chunk = ss "ne va pas" ;
|
||||||
|
cond_Chunk = ss "ferait" ; ----
|
||||||
|
cond_neg_Chunk = ss "ne ferait pas" ; ----
|
||||||
|
perfect_Chunk = ss "a" ;
|
||||||
|
perfect_neg_Chunk = ss "n'a pas" ;
|
||||||
|
past_perfect_Chunk = ss "avait" ;
|
||||||
|
past_perfect_neg_Chunk = ss "n'avait pas" ;
|
||||||
|
|
||||||
|
fullstop_Chunk = ss "." ;
|
||||||
|
exclmark_Chunk = ss "!" ;
|
||||||
|
questmark_Chunk = ss "?" ;
|
||||||
|
comma_Chunk = ss "," ;
|
||||||
|
colon_Chunk = ss ":" ;
|
||||||
|
semicolon_Chunk = ss ";" ;
|
||||||
|
quote_Chunk = ss "\"" ;
|
||||||
|
lpar_Chunk = ss "(" ;
|
||||||
|
rpar_Chunk = ss ")" ;
|
||||||
|
dash_Chunk = ss "-" ;
|
||||||
|
|
||||||
|
}
|
||||||
37
lib/src/chunk/ChunkGer.gf
Normal file
37
lib/src/chunk/ChunkGer.gf
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
concrete ChunkGer of Chunk = CatGer, ExtensionsGer [VPS,VPI] **
|
||||||
|
ChunkFunctor with (Syntax = SyntaxGer), (Extensions = ExtensionsGer) **
|
||||||
|
open
|
||||||
|
SyntaxGer, (E = ExtensionsGer), Prelude,
|
||||||
|
ResGer, (P = ParadigmsGer) in {
|
||||||
|
|
||||||
|
oper
|
||||||
|
emptyNP = mkNP (P.mkPN []) ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
NP_Acc_Chunk np = ss (np.s ! NPC Acc) ;
|
||||||
|
NP_Gen_Chunk np = ss (np.s ! NPC Gen) ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
copula_inf_Chunk = ss "sein" ;
|
||||||
|
|
||||||
|
refl_SgP1_Chunk = ss "mich selbst" ;
|
||||||
|
refl_SgP2_Chunk = ss "dich selbst" ;
|
||||||
|
refl_SgP3_Chunk = ss "sich selbst" ;
|
||||||
|
refl_PlP1_Chunk = ss "uns selbst" ;
|
||||||
|
refl_PlP2_Chunk = ss "euch selbst" ;
|
||||||
|
refl_PlP3_Chunk = ss "sich selbst" ;
|
||||||
|
neg_Chunk = ss "nicht" ;
|
||||||
|
copula_Chunk = ss "ist" ;
|
||||||
|
copula_neg_Chunk = ss "ist nicht" ;
|
||||||
|
past_copula_Chunk = ss "war" ;
|
||||||
|
past_copula_neg_Chunk = ss "war nicht" ;
|
||||||
|
future_Chunk = ss "wird" ;
|
||||||
|
future_neg_Chunk = ss "wird nicht" ;
|
||||||
|
cond_Chunk = ss "würde" ;
|
||||||
|
cond_neg_Chunk = ss "würde nicht" ;
|
||||||
|
perfect_Chunk = ss "hat" ;
|
||||||
|
perfect_neg_Chunk = ss "hat nicht" ;
|
||||||
|
past_perfect_Chunk = ss "hatte" ;
|
||||||
|
past_perfect_neg_Chunk = ss "hatte nicht" ;
|
||||||
|
|
||||||
|
}
|
||||||
46
lib/src/chunk/ChunkHin.gf
Normal file
46
lib/src/chunk/ChunkHin.gf
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
concrete ChunkHin of Chunk = CatHin, ExtensionsHin [VPS,VPI] **
|
||||||
|
ChunkFunctor - [Adv_Chunk, Prep_Chunk]
|
||||||
|
with (Syntax = SyntaxHin), (Extensions = ExtensionsHin) **
|
||||||
|
open
|
||||||
|
SyntaxHin, (E = ExtensionsHin), Prelude, CommonHindustani,
|
||||||
|
(R = ResHin), (P = ParadigmsHin) in {
|
||||||
|
|
||||||
|
lin
|
||||||
|
Adv_Chunk adv = mkUtt adv ;
|
||||||
|
Prep_Chunk prep = pss (prep.s ! Masc) ; ----
|
||||||
|
|
||||||
|
oper
|
||||||
|
emptyNP = mkNP (P.mkPN []) ;
|
||||||
|
pss = Prelude.ss ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
NP_Acc_Chunk np = mkUtt np ;
|
||||||
|
NP_Gen_Chunk np = mkUtt (mkAdv possess_Prep np) ;
|
||||||
|
|
||||||
|
copula_inf_Chunk = pss " है " ;
|
||||||
|
|
||||||
|
refl_SgP1_Chunk,
|
||||||
|
refl_SgP2_Chunk,
|
||||||
|
refl_SgP3_Chunk,
|
||||||
|
refl_PlP1_Chunk,
|
||||||
|
refl_PlP2_Chunk,
|
||||||
|
refl_PlP3_Chunk = pss " आप " ; ----
|
||||||
|
|
||||||
|
neg_Chunk = pss " नहीं " ;
|
||||||
|
copula_Chunk = pss " है " ;
|
||||||
|
copula_neg_Chunk = pss " नहीं है " ;
|
||||||
|
|
||||||
|
past_copula_Chunk = pss " था " ;
|
||||||
|
past_copula_neg_Chunk = pss " नहीं था " ;
|
||||||
|
|
||||||
|
future_Chunk = pss " हीं होगा " ;
|
||||||
|
future_neg_Chunk = pss " नहीं होगा " ;
|
||||||
|
|
||||||
|
cond_Chunk = pss " हीं होगा " ; ---- same as future
|
||||||
|
cond_neg_Chunk = pss " नहीं होगा " ;
|
||||||
|
perfect_Chunk = pss " है " ;
|
||||||
|
perfect_neg_Chunk = pss " नहीं " ;
|
||||||
|
past_perfect_Chunk = pss " था " ;
|
||||||
|
past_perfect_neg_Chunk = pss " नहीं " ;
|
||||||
|
|
||||||
|
}
|
||||||
52
lib/src/chunk/ChunkIta.gf
Normal file
52
lib/src/chunk/ChunkIta.gf
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
concrete ChunkIta of Chunk = CatIta, ExtensionsIta [VPS,VPI] **
|
||||||
|
ChunkFunctor - [SSlash_Chunk]
|
||||||
|
with (Syntax = SyntaxIta), (Extensions = ExtensionsIta) **
|
||||||
|
open
|
||||||
|
SyntaxIta, (E = ExtensionsIta), Prelude,
|
||||||
|
ResIta, CommonRomance, (P = ParadigmsIta) in {
|
||||||
|
|
||||||
|
lin
|
||||||
|
SSlash_Chunk s = mkUtt <lin S {s = s.s ! {g = Masc ; n = Sg}} : S> ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
NP_Acc_Chunk np = ss (np.s ! Acc).ton ;
|
||||||
|
NP_Gen_Chunk np = ss (np.s ! genitive).comp ;
|
||||||
|
|
||||||
|
oper
|
||||||
|
emptyNP = mkNP (P.mkPN []) ;
|
||||||
|
|
||||||
|
|
||||||
|
copula_inf_Chunk = ss "essere" ;
|
||||||
|
|
||||||
|
refl_SgP1_Chunk = ss "me stesso" ;
|
||||||
|
refl_SgP2_Chunk = ss "te stesso" ;
|
||||||
|
refl_SgP3_Chunk = ss "lui stesso" ;
|
||||||
|
refl_PlP1_Chunk = ss "noi stessi" ;
|
||||||
|
refl_PlP2_Chunk = ss "voi stessi" ;
|
||||||
|
refl_PlP3_Chunk = ss "loro stessi" ;
|
||||||
|
neg_Chunk = ss "non" ;
|
||||||
|
copula_Chunk = ss "è" ;
|
||||||
|
copula_neg_Chunk = ss "non è" ;
|
||||||
|
past_copula_Chunk = ss "era" ;
|
||||||
|
past_copula_neg_Chunk = ss "non era" ;
|
||||||
|
future_Chunk = ss "vuole" ; ----
|
||||||
|
future_neg_Chunk = ss "non vuole" ; ----
|
||||||
|
cond_Chunk = ss "vorrebbe" ; ----
|
||||||
|
cond_neg_Chunk = ss "non vorrebbe" ; ----
|
||||||
|
perfect_Chunk = ss "ha" ;
|
||||||
|
perfect_neg_Chunk = ss "non ha" ;
|
||||||
|
past_perfect_Chunk = ss "aveva" ;
|
||||||
|
past_perfect_neg_Chunk = ss "non aveva" ;
|
||||||
|
|
||||||
|
fullstop_Chunk = ss "." ;
|
||||||
|
exclmark_Chunk = ss "!" ;
|
||||||
|
questmark_Chunk = ss "?" ;
|
||||||
|
comma_Chunk = ss "," ;
|
||||||
|
colon_Chunk = ss ":" ;
|
||||||
|
semicolon_Chunk = ss ";" ;
|
||||||
|
quote_Chunk = ss "\"" ;
|
||||||
|
lpar_Chunk = ss "(" ;
|
||||||
|
rpar_Chunk = ss ")" ;
|
||||||
|
dash_Chunk = ss "-" ;
|
||||||
|
|
||||||
|
}
|
||||||
52
lib/src/chunk/ChunkSpa.gf
Normal file
52
lib/src/chunk/ChunkSpa.gf
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
concrete ChunkSpa of Chunk = CatSpa, ExtensionsSpa [VPS,VPI] **
|
||||||
|
ChunkFunctor - [SSlash_Chunk]
|
||||||
|
with (Syntax = SyntaxSpa), (Extensions = ExtensionsSpa) **
|
||||||
|
open
|
||||||
|
SyntaxSpa, (E = ExtensionsSpa), Prelude,
|
||||||
|
ResSpa, CommonRomance, (P = ParadigmsSpa) in {
|
||||||
|
|
||||||
|
lin
|
||||||
|
SSlash_Chunk s = mkUtt <lin S {s = s.s ! {g = Masc ; n = Sg}} : S> ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
NP_Acc_Chunk np = ss (np.s ! Acc).ton ;
|
||||||
|
NP_Gen_Chunk np = ss (np.s ! genitive).comp ;
|
||||||
|
|
||||||
|
oper
|
||||||
|
emptyNP = mkNP (P.mkPN []) ;
|
||||||
|
|
||||||
|
lin
|
||||||
|
copula_inf_Chunk = ss "ser" ;
|
||||||
|
|
||||||
|
refl_SgP1_Chunk = ss "yo mismo" ;
|
||||||
|
refl_SgP2_Chunk = ss "tu mismo" ;
|
||||||
|
refl_SgP3_Chunk = ss "ello mismo" ;
|
||||||
|
refl_PlP1_Chunk = ss "nosotros mismos" ;
|
||||||
|
refl_PlP2_Chunk = ss "vosotros mismos" ;
|
||||||
|
refl_PlP3_Chunk = ss "ellos mismos" ;
|
||||||
|
neg_Chunk = ss "no" ;
|
||||||
|
copula_Chunk = ss "es" ;
|
||||||
|
copula_neg_Chunk = ss "no es" ;
|
||||||
|
past_copula_Chunk = ss "era" ;
|
||||||
|
past_copula_neg_Chunk = ss "no era" ;
|
||||||
|
future_Chunk = ss "va" ; ----
|
||||||
|
future_neg_Chunk = ss "no va" ; ----
|
||||||
|
cond_Chunk = ss "iría" ; ----
|
||||||
|
cond_neg_Chunk = ss "no iría" ; ----
|
||||||
|
perfect_Chunk = ss "ha" ;
|
||||||
|
perfect_neg_Chunk = ss "no ha" ;
|
||||||
|
past_perfect_Chunk = ss "había" ;
|
||||||
|
past_perfect_neg_Chunk = ss "no había" ;
|
||||||
|
|
||||||
|
fullstop_Chunk = ss "." ;
|
||||||
|
exclmark_Chunk = ss "!" ;
|
||||||
|
questmark_Chunk = ss "?" ;
|
||||||
|
comma_Chunk = ss "," ;
|
||||||
|
colon_Chunk = ss ":" ;
|
||||||
|
semicolon_Chunk = ss ";" ;
|
||||||
|
quote_Chunk = ss "\"" ;
|
||||||
|
lpar_Chunk = ss "(" ;
|
||||||
|
rpar_Chunk = ss ")" ;
|
||||||
|
dash_Chunk = ss "-" ;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -2,7 +2,11 @@ concrete ChunkSwe of Chunk = CatSwe, ExtensionsSwe [VPS,VPI] **
|
|||||||
ChunkFunctor with (Syntax = SyntaxSwe), (Extensions = ExtensionsSwe) **
|
ChunkFunctor with (Syntax = SyntaxSwe), (Extensions = ExtensionsSwe) **
|
||||||
open
|
open
|
||||||
SyntaxSwe, (E = ExtensionsSwe), Prelude,
|
SyntaxSwe, (E = ExtensionsSwe), Prelude,
|
||||||
(R = ResSwe), (P = ParadigmsSwe) in {
|
(C=CommonScand), (R=ResSwe), (P = ParadigmsSwe) in {
|
||||||
|
|
||||||
|
lin
|
||||||
|
NP_Acc_Chunk np = ss (np.s ! C.NPAcc) ;
|
||||||
|
NP_Gen_Chunk np = ss (np.s ! C.NPPoss (C.GSg C.Utr) C.Nom) ;
|
||||||
|
|
||||||
oper
|
oper
|
||||||
emptyNP = mkNP (P.mkPN []) ;
|
emptyNP = mkNP (P.mkPN []) ;
|
||||||
|
|||||||
@@ -1,22 +1,22 @@
|
|||||||
concrete ExtensionsFre of Extensions =
|
concrete ExtensionsFre of Extensions =
|
||||||
CatFre **
|
CatFre **
|
||||||
open
|
open
|
||||||
PhonoFre, MorphoFre, ResFre, CommonRomance, ParadigmsFre, SyntaxFre, Prelude, (G = GrammarFre) in {
|
PhonoFre, MorphoFre, ResFre, CommonRomance, ParadigmsFre, SyntaxFre, Prelude, (G = GrammarFre), (E = ExtraFre) in {
|
||||||
|
|
||||||
----lincat
|
lincat
|
||||||
---- VPI = E.VPI ;
|
VPI = E.VPI ;
|
||||||
---- ListVPI = E.ListVPI ;
|
---- ListVPI = E.ListVPI ;
|
||||||
---- VPS = E.VPS ;
|
VPS = E.VPS ;
|
||||||
---- ListVPS = E.ListVPS ;
|
---- ListVPS = E.ListVPS ;
|
||||||
|
|
||||||
----lin
|
lin
|
||||||
---- MkVPI = E.MkVPI ;
|
MkVPI = E.MkVPI ;
|
||||||
---- ConjVPI = E.ConjVPI ;
|
---- ConjVPI = E.ConjVPI ;
|
||||||
---- ComplVPIVV = E.ComplVPIVV ;
|
---- ComplVPIVV = E.ComplVPIVV ;
|
||||||
|
|
||||||
---- MkVPS = E.MkVPS ;
|
MkVPS = E.MkVPS ;
|
||||||
---- ConjVPS = E.ConjVPS ;
|
---- ConjVPS = E.ConjVPS ;
|
||||||
---- PredVPS = E.PredVPS ;
|
PredVPS = E.PredVPS ;
|
||||||
|
|
||||||
---- BaseVPI = E.BaseVPI ;
|
---- BaseVPI = E.BaseVPI ;
|
||||||
---- ConsVPI = E.ConsVPI ;
|
---- ConsVPI = E.ConsVPI ;
|
||||||
|
|||||||
@@ -1,22 +1,22 @@
|
|||||||
concrete ExtensionsIta of Extensions =
|
concrete ExtensionsIta of Extensions =
|
||||||
CatIta **
|
CatIta **
|
||||||
open
|
open
|
||||||
PhonoIta, MorphoIta, ResIta, CommonRomance, ParadigmsIta, SyntaxIta, Prelude, (G = GrammarIta) in {
|
PhonoIta, MorphoIta, ResIta, CommonRomance, ParadigmsIta, SyntaxIta, Prelude, (G = GrammarIta), (E = ExtraIta) in {
|
||||||
|
|
||||||
----lincat
|
lincat
|
||||||
---- VPI = E.VPI ;
|
VPI = E.VPI ;
|
||||||
---- ListVPI = E.ListVPI ;
|
---- ListVPI = E.ListVPI ;
|
||||||
---- VPS = E.VPS ;
|
VPS = E.VPS ;
|
||||||
---- ListVPS = E.ListVPS ;
|
---- ListVPS = E.ListVPS ;
|
||||||
|
|
||||||
----lin
|
lin
|
||||||
---- MkVPI = E.MkVPI ;
|
MkVPI = E.MkVPI ;
|
||||||
---- ConjVPI = E.ConjVPI ;
|
---- ConjVPI = E.ConjVPI ;
|
||||||
---- ComplVPIVV = E.ComplVPIVV ;
|
---- ComplVPIVV = E.ComplVPIVV ;
|
||||||
|
|
||||||
---- MkVPS = E.MkVPS ;
|
MkVPS = E.MkVPS ;
|
||||||
---- ConjVPS = E.ConjVPS ;
|
---- ConjVPS = E.ConjVPS ;
|
||||||
---- PredVPS = E.PredVPS ;
|
PredVPS = E.PredVPS ;
|
||||||
|
|
||||||
---- BaseVPI = E.BaseVPI ;
|
---- BaseVPI = E.BaseVPI ;
|
||||||
---- ConsVPI = E.ConsVPI ;
|
---- ConsVPI = E.ConsVPI ;
|
||||||
|
|||||||
@@ -1,22 +1,22 @@
|
|||||||
concrete ExtensionsSpa of Extensions =
|
concrete ExtensionsSpa of Extensions =
|
||||||
CatSpa **
|
CatSpa **
|
||||||
open
|
open
|
||||||
PhonoSpa, MorphoSpa, ResSpa, CommonRomance, ParadigmsSpa, SyntaxSpa, Prelude, (G = GrammarSpa) in {
|
PhonoSpa, MorphoSpa, ResSpa, CommonRomance, ParadigmsSpa, SyntaxSpa, Prelude, (G = GrammarSpa), (E = ExtraSpa) in {
|
||||||
|
|
||||||
----lincat
|
lincat
|
||||||
---- VPI = E.VPI ;
|
VPI = E.VPI ;
|
||||||
---- ListVPI = E.ListVPI ;
|
---- ListVPI = E.ListVPI ;
|
||||||
---- VPS = E.VPS ;
|
VPS = E.VPS ;
|
||||||
---- ListVPS = E.ListVPS ;
|
---- ListVPS = E.ListVPS ;
|
||||||
|
|
||||||
----lin
|
lin
|
||||||
---- MkVPI = E.MkVPI ;
|
MkVPI = E.MkVPI ;
|
||||||
---- ConjVPI = E.ConjVPI ;
|
---- ConjVPI = E.ConjVPI ;
|
||||||
---- ComplVPIVV = E.ComplVPIVV ;
|
---- ComplVPIVV = E.ComplVPIVV ;
|
||||||
|
|
||||||
---- MkVPS = E.MkVPS ;
|
MkVPS = E.MkVPS ;
|
||||||
---- ConjVPS = E.ConjVPS ;
|
---- ConjVPS = E.ConjVPS ;
|
||||||
---- PredVPS = E.PredVPS ;
|
PredVPS = E.PredVPS ;
|
||||||
|
|
||||||
---- BaseVPI = E.BaseVPI ;
|
---- BaseVPI = E.BaseVPI ;
|
||||||
---- ConsVPI = E.ConsVPI ;
|
---- ConsVPI = E.ConsVPI ;
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ abstract Translate =
|
|||||||
Numeral,
|
Numeral,
|
||||||
Conjunction,
|
Conjunction,
|
||||||
Verb - [
|
Verb - [
|
||||||
----- SlashV2V, PassV2, ComplVV, -- to be generalized
|
SlashV2V, PassV2, ComplVV, -- to be generalized
|
||||||
UseCopula ---- overgenerating ??
|
UseCopula ---- overgenerating ??
|
||||||
],
|
],
|
||||||
Adverb,
|
Adverb,
|
||||||
@@ -22,7 +22,7 @@ abstract Translate =
|
|||||||
Chunk,
|
Chunk,
|
||||||
|
|
||||||
Construction,
|
Construction,
|
||||||
Extensions - [VPI,VPS,PredFrontVQ,PredFrontVS,SlashSlashV2V,SlashV2V,SlashVPIV2V,ComplVV,PassVPSlash,PassAgentVPSlash],
|
Extensions - [VPI,VPS],
|
||||||
Dictionary,
|
Dictionary,
|
||||||
Documentation
|
Documentation
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,8 @@ concrete TranslateChi of Translate =
|
|||||||
SymbolChi [PN, Symb, String, CN, Card, NP, MkSymb, SymbPN, CNNumNP],
|
SymbolChi [PN, Symb, String, CN, Card, NP, MkSymb, SymbPN, CNNumNP],
|
||||||
ConjunctionChi,
|
ConjunctionChi,
|
||||||
VerbChi - [
|
VerbChi - [
|
||||||
SlashV2V, PassV2, UseCopula, ComplVV,
|
UseCopula, -- just removed
|
||||||
|
SlashV2V, PassV2, ComplVV, -- generalized
|
||||||
CompAP, AdvVP -- Chi exceptions
|
CompAP, AdvVP -- Chi exceptions
|
||||||
],
|
],
|
||||||
AdverbChi,
|
AdverbChi,
|
||||||
|
|||||||
@@ -12,16 +12,13 @@ concrete TranslateEng of Translate =
|
|||||||
],
|
],
|
||||||
ConjunctionEng,
|
ConjunctionEng,
|
||||||
VerbEng - [
|
VerbEng - [
|
||||||
UseCopula,
|
UseCopula, -- just removed
|
||||||
-- SlashV2V, PassV2, ComplVV, -- generalized in Extensions
|
SlashV2V, PassV2, ComplVV, -- generalized in Extensions
|
||||||
ComplVS, SlashV2S, ComplSlash, -- have variants in Eng
|
ComplVS, SlashV2S, ComplSlash -- Eng exceptions
|
||||||
SlashV2VNP, SlashVV, AdVVPSlash,AdvVPSlash,VPSlashPrep -----
|
|
||||||
],
|
],
|
||||||
AdverbEng,
|
AdverbEng,
|
||||||
PhraseEng,
|
PhraseEng,
|
||||||
SentenceEng - [
|
SentenceEng - [
|
||||||
SlashVS, -----
|
|
||||||
---- PredVP, -- to be replaced by PredVPS, QuestVPS, QuestIAdvVPS in Extensions
|
|
||||||
UseCl -- replaced by UseCl | ContractedUseCl
|
UseCl -- replaced by UseCl | ContractedUseCl
|
||||||
],
|
],
|
||||||
QuestionEng,
|
QuestionEng,
|
||||||
@@ -33,7 +30,7 @@ concrete TranslateEng of Translate =
|
|||||||
ChunkEng,
|
ChunkEng,
|
||||||
|
|
||||||
ExtensionsEng - [
|
ExtensionsEng - [
|
||||||
VPI,VPS,PredFrontVQ,PredFrontVS,SlashSlashV2V,SlashV2V,SlashVPIV2V,ComplVV,PassVPSlash,PassAgentVPSlash
|
VPI,VPS
|
||||||
],
|
],
|
||||||
DictionaryEng **
|
DictionaryEng **
|
||||||
open MorphoEng, ResEng, ParadigmsEng, (G = GrammarEng), (E = ExtraEng), Prelude in {
|
open MorphoEng, ResEng, ParadigmsEng, (G = GrammarEng), (E = ExtraEng), Prelude in {
|
||||||
|
|||||||
@@ -11,8 +11,7 @@ concrete TranslateSwe of Translate =
|
|||||||
ConjunctionSwe,
|
ConjunctionSwe,
|
||||||
VerbSwe - [
|
VerbSwe - [
|
||||||
UseCopula,
|
UseCopula,
|
||||||
-- SlashV2V, PassV2, ComplVV, -- generalized in Extensions
|
SlashV2V, PassV2, ComplVV -- generalized in Extensions
|
||||||
SlashV2VNP, SlashVV, AdVVPSlash,AdvVPSlash,VPSlashPrep -----
|
|
||||||
],
|
],
|
||||||
AdverbSwe,
|
AdverbSwe,
|
||||||
PhraseSwe,
|
PhraseSwe,
|
||||||
@@ -29,7 +28,7 @@ concrete TranslateSwe of Translate =
|
|||||||
ChunkSwe,
|
ChunkSwe,
|
||||||
|
|
||||||
ExtensionsSwe - [
|
ExtensionsSwe - [
|
||||||
VPI,VPS,PredFrontVQ,PredFrontVS,SlashSlashV2V,SlashV2V,SlashVPIV2V,ComplVV,PassVPSlash,PassAgentVPSlash
|
VPI,VPS
|
||||||
],
|
],
|
||||||
DictionarySwe **
|
DictionarySwe **
|
||||||
open MorphoSwe, ResSwe, ParadigmsSwe, SyntaxSwe, CommonScand, (E = ExtraSwe), Prelude in {
|
open MorphoSwe, ResSwe, ParadigmsSwe, SyntaxSwe, CommonScand, (E = ExtraSwe), Prelude in {
|
||||||
|
|||||||
Reference in New Issue
Block a user