removed that-less variants of ComplVS and SlashV2S from VerbEng, and added constructors ComplBareVS and SlashBareV2S to Extra, so that the library user can control the presence of "that".

This commit is contained in:
aarne
2013-10-18 08:45:56 +00:00
parent 34bc94e76b
commit fdfc8d4dc2
6 changed files with 21 additions and 6 deletions

View File

@@ -86,4 +86,9 @@ abstract Extra = Cat ** {
PurposeVP : VP -> Adv ; -- to become happy
-- object S without "that"
ComplBareVS : VS -> S -> VP ; -- say she runs
SlashBareV2S : V2S -> S -> VPSlash ; -- answer (to him) it is good
}

View File

@@ -176,6 +176,14 @@ lin
PurposeVP vp = {s = infVP VVInf vp Simul CPos (agrP3 Sg)} ; --- agr
ComplBareVS v s = insertObj (\\_ => s.s) (predV v) ;
SlashBareV2S v s = insertObjc (\\_ => s.s) (predVc v) ;
------------
--- obsolete: use UncNeg : Pol

View File

@@ -18,7 +18,7 @@ concrete ParseEng of ParseEngAbs =
Temp, Pol, Conj, VPS, ListVPS, S, Num, CN, RP, MkVPS, BaseVPS, ConsVPS, ConjVPS, PredVPS, GenRP,
VPI, VPIForm, VPIInf, VPIPresPart, ListVPI, VV, MkVPI, BaseVPI, ConsVPI, ConjVPI, ComplVPIVV,
ComplSlashPartLast,
ClSlash, RCl, EmptyRelSlash],
ClSlash, RCl, EmptyRelSlash, VS, V2S, ComplBareVS, SlashBareV2S],
DictEng **
open MorphoEng, ResEng, ParadigmsEng, Prelude in {

View File

@@ -16,7 +16,7 @@ abstract ParseEngAbs =
ExtraEngAbs [NP, Quant, VPSlash, VP, GenNP, PassVPSlash,
Temp, Tense, Pol, Conj, VPS, ListVPS, S, Num, CN, RP, MkVPS, BaseVPS, ConsVPS, ConjVPS, PredVPS, GenRP,
VPI, ListVPI, VV, MkVPI, BaseVPI, ConsVPI, ConjVPI, ComplVPIVV, ComplSlashPartLast,
ClSlash, RCl, EmptyRelSlash],
ClSlash, RCl, EmptyRelSlash, VS, V2S, ComplBareVS, SlashBareV2S],
DictEngAbs ** {
flags

View File

@@ -12,12 +12,14 @@ concrete VerbEng of Verb = CatEng ** open ResEng, Prelude in {
insertObjc (\\_ => v.c3 ++ np.s ! NPAcc) (predVc v) ; ----
ComplVV v vp = insertObj (\\a => infVP v.typ vp Simul CPos a) (predVV v) ;
ComplVS v s = insertObj (variants {\\_ => conjThat ++ s.s; \\_ => s.s}) (predV v) ;
ComplVS v s = insertObj (\\_ => conjThat ++ s.s) (predV v) ;
--- ComplVS v s = insertObj (variants {\\_ => conjThat ++ s.s; \\_ => s.s}) (predV v) ;
ComplVQ v q = insertObj (\\_ => q.s ! QIndir) (predV v) ;
ComplVA v ap = insertObj (ap.s) (predV v) ;
SlashV2V v vp = insertObjc (\\a => v.c3 ++ infVP v.typ vp Simul CPos a) (predVc v) ;
SlashV2S v s = insertObjc (variants {\\_ => conjThat ++ s.s; \\_ => s.s}) (predVc v) ;
SlashV2S v s = insertObjc (\\_ => conjThat ++ s.s) (predVc v) ;
--- SlashV2S v s = insertObjc (variants {\\_ => conjThat ++ s.s; \\_ => s.s}) (predVc v) ;
SlashV2Q v q = insertObjc (\\_ => q.s ! QIndir) (predVc v) ;
SlashV2A v ap = insertObjc (\\a => ap.s ! a) (predVc v) ; ----

View File

@@ -1405,8 +1405,8 @@ resource ResGre = ParamX ** open Prelude in {
<Masc | Change,Sg,CPrep P_se > => "στον" ;
<Fem, Sg, Nom> => "η" ;
<Fem, Sg, Gen|CPrep P_Dat> => "της" ;
<Fem, Sg, Acc |CPrep PNul> => pre { FemAccFinalN => "την" ; _=> "τη"} ;
<Fem, Sg, CPrep P_se > => pre { FemAccFinalN => "στην" ; _=> "στη"} ;
<Fem, Sg, Acc |CPrep PNul> => pre { "ά" | "ό" | "ί"| "έ" | "ή" | "ύ"| "ώ" | "α" | "ο" | "ι"| "ε" |"η" | "υ" | "ω" |"κ"|"π" |"τ"| "ξ" |"ψ"| "γκ" |"μπ" |"ντ" => "την" ; _=> "τη"} ;
<Fem, Sg, CPrep P_se > => pre { "ά" | "ό" | "ί"| "έ" | "ή" | "ύ"| "ώ" | "α" | "ο" | "ι"| "ε" |"η" | "υ" | "ω" |"κ"|"π" |"τ"| "ξ" |"ψ"| "γκ" |"μπ" |"ντ" => "στην" ; _=> "στη"} ;
<Neut, Sg, Nom | Acc |CPrep PNul> => prepCase c++ "το" ;
<Neut, Sg, Gen|CPrep P_Dat> => "του" ;
<Neut, Sg, CPrep P_se > => "στο" ;