From fdfc8d4dc2b8e07c90e51fb91327b084f4edcb1e Mon Sep 17 00:00:00 2001 From: aarne Date: Fri, 18 Oct 2013 08:45:56 +0000 Subject: [PATCH] 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". --- lib/src/abstract/Extra.gf | 5 +++++ lib/src/english/ExtraEng.gf | 8 ++++++++ lib/src/english/ParseEng.gf | 2 +- lib/src/english/ParseEngAbs.gf | 2 +- lib/src/english/VerbEng.gf | 6 ++++-- lib/src/greek/ResGre.gf | 4 ++-- 6 files changed, 21 insertions(+), 6 deletions(-) diff --git a/lib/src/abstract/Extra.gf b/lib/src/abstract/Extra.gf index 855199d30..a7378a5da 100644 --- a/lib/src/abstract/Extra.gf +++ b/lib/src/abstract/Extra.gf @@ -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 + } diff --git a/lib/src/english/ExtraEng.gf b/lib/src/english/ExtraEng.gf index 67f34cbed..c0905be0b 100644 --- a/lib/src/english/ExtraEng.gf +++ b/lib/src/english/ExtraEng.gf @@ -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 diff --git a/lib/src/english/ParseEng.gf b/lib/src/english/ParseEng.gf index 506975a0b..1ca26b4c2 100644 --- a/lib/src/english/ParseEng.gf +++ b/lib/src/english/ParseEng.gf @@ -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 { diff --git a/lib/src/english/ParseEngAbs.gf b/lib/src/english/ParseEngAbs.gf index ff80b1b0f..1ceb1c926 100644 --- a/lib/src/english/ParseEngAbs.gf +++ b/lib/src/english/ParseEngAbs.gf @@ -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 diff --git a/lib/src/english/VerbEng.gf b/lib/src/english/VerbEng.gf index 03437c0dd..1f15b691f 100644 --- a/lib/src/english/VerbEng.gf +++ b/lib/src/english/VerbEng.gf @@ -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) ; ---- diff --git a/lib/src/greek/ResGre.gf b/lib/src/greek/ResGre.gf index ba7329b4a..8a0168420 100644 --- a/lib/src/greek/ResGre.gf +++ b/lib/src/greek/ResGre.gf @@ -1405,8 +1405,8 @@ resource ResGre = ParamX ** open Prelude in { => "στον" ; => "η" ; => "της" ; - => pre { FemAccFinalN => "την" ; _=> "τη"} ; - => pre { FemAccFinalN => "στην" ; _=> "στη"} ; + => pre { "ά" | "ό" | "ί"| "έ" | "ή" | "ύ"| "ώ" | "α" | "ο" | "ι"| "ε" |"η" | "υ" | "ω" |"κ"|"π" |"τ"| "ξ" |"ψ"| "γκ" |"μπ" |"ντ" => "την" ; _=> "τη"} ; + => pre { "ά" | "ό" | "ί"| "έ" | "ή" | "ύ"| "ώ" | "α" | "ο" | "ι"| "ε" |"η" | "υ" | "ω" |"κ"|"π" |"τ"| "ξ" |"ψ"| "γκ" |"μπ" |"ντ" => "στην" ; _=> "στη"} ; => prepCase c++ "το" ; => "του" ; => "στο" ;