From 945732f6957bb347597e99ff2ed2a5899400ec4c Mon Sep 17 00:00:00 2001 From: Aarne Ranta Date: Tue, 29 Aug 2017 11:54:41 +0200 Subject: [PATCH] some edits of Extend --- src/abstract/Extend.gf | 11 +++++++++-- src/common/ExtendFunctor.gf | 14 ++++++++++---- src/english/ExtendEng.gf | 4 ++-- 3 files changed, 21 insertions(+), 8 deletions(-) diff --git a/src/abstract/Extend.gf b/src/abstract/Extend.gf index 26da22e7a..8298ee001 100644 --- a/src/abstract/Extend.gf +++ b/src/abstract/Extend.gf @@ -118,10 +118,17 @@ abstract Extend = Cat ** { ComplBareVS : VS -> S -> VP ; -- say she runs SlashBareV2S : V2S -> S -> VPSlash ; -- answer (to him) it is good + ComplDirectVS : VS -> Utt -> VP ; -- say: "today" + ComplDirectVQ : VQ -> Utt -> VP ; -- ask: "when" + -- front the extraposed part - FrontExtPredVP : NP -> VP -> Cl ; -- I am here, she said - InvFrontExtPredVP : NP -> VP -> Cl ; -- I am here, said she + FrontComplDirectVS : NP -> VS -> Utt -> Cl ; -- "I am here", she said + FrontComplDirectVQ : NP -> VQ -> Utt -> Cl ; -- "where", she asked + +-- proper structure of "it is AP to VP" + + PredAPVP : AP -> VP -> Cl ; -- it is good to walk -- to use an AP as CN or NP without CN diff --git a/src/common/ExtendFunctor.gf b/src/common/ExtendFunctor.gf index a758cc7ff..4fa91f8a2 100644 --- a/src/common/ExtendFunctor.gf +++ b/src/common/ExtendFunctor.gf @@ -53,10 +53,13 @@ lin NominalizeVPSlashNP = variants {} ; -- VPSlash -> NP -> NP ; ExistsNP = variants {} ; -- NP -> Cl ; -- there exists a number / there exist numbers PurposeVP = variants {} ; -- VP -> Adv ; -- to become happy - ComplBareVS = variants {} ; -- VS -> S -> VP ; -- say she runs - SlashBareV2S = variants {} ; -- V2S -> S -> VPSlash ; -- answer (to him) it is good - FrontExtPredVP = variants {} ; -- NP -> VP -> Cl ; -- I am here, she said - InvFrontExtPredVP = variants {} ; -- NP -> VP -> Cl ; -- I am here, said she + ComplBareVS = ComplVS ; -- VS -> S -> VP ; -- say she runs ; DEFAULT say that she runs + SlashBareV2S = SlashV2S ; -- V2S -> S -> VPSlash ; -- answer (to him) it is good ; DEFAULT answer that it is good + ComplDirectVS vs utt = AdvVP (UseV ) (lin Adv {s = ":" ++ quoted utt.s}) ; -- DEFAULT complement added as Adv in quotes + ComplDirectVQ vq utt = AdvVP (UseV ) (lin Adv {s = ":" ++ quoted utt.s}) ; -- DEFAULT complement added as Adv in quotes + FrontComplDirectVS = variants {} ; -- NP -> VS -> Utt -> Cl ; -- "I am here", she said + FrontComplDirectVQ = variants {} ; -- NP -> VQ -> Utt -> Cl ; -- "where", she asked + PredAPVP ap vp = ImpersCl (UseComp (CompAP (SentAP ap (EmbedVP vp)))) ; -- DEFAULT it is (good to walk) AdjAsCN = variants {} ; -- AP -> CN ; -- a green one ; en grön (Swe) AdjAsNP = variants {} ; -- AP -> NP ; -- green (is good) ReflRNP = variants {} ; -- VPSlash -> RNP -> VP ; -- love my family and myself @@ -103,4 +106,7 @@ lin UttAccIP = UttIP ; -- whom (accusative) ; DEFAULT who UttDatIP ip = UttAccIP (lin IP ip) ; -- whom (dative) ; DEFAULT who +oper + quoted : Str -> Str = \s -> "\"" ++ s ++ "\"" ; ---- TODO bind ; move to Prelude? + } \ No newline at end of file diff --git a/src/english/ExtendEng.gf b/src/english/ExtendEng.gf index a56b5f5e5..d44ae4dfc 100644 --- a/src/english/ExtendEng.gf +++ b/src/english/ExtendEng.gf @@ -11,8 +11,8 @@ concrete ExtendEng of Extend = Base_nr_RNP, Base_rn_RNP, Base_rr_RNP, ByVP, CompBareCN, CompIQuant, CompQS, CompS, CompVP, ComplBareVS, ComplGenVV, ComplSlashPartLast, ComplVPSVV, CompoundAP, CompoundN, ConjRNP, ConjVPS, ConsVPS, Cons_nr_RNP, Cons_rr_RNP, DetNPFem, EmbedPresPart, EmptyRelSlash, - ExistsNP, FocusAP, FocusAdV, FocusAdv, FocusObj, FrontExtPredVP, GenIP, GenModIP, GenModNP, GenNP, GenRP, - GerundAdv, GerundCN, GerundNP, IAdvAdv, ICompAP, InOrderToVP, InvFrontExtPredVP, MkVPS, NominalizeVPSlashNP, + ExistsNP, FocusAP, FocusAdV, FocusAdv, FocusObj, GenIP, GenModIP, GenModNP, GenNP, GenRP, + GerundAdv, GerundCN, GerundNP, IAdvAdv, ICompAP, InOrderToVP, MkVPS, NominalizeVPSlashNP, PassAgentVPSlash, PassVPSlash, PastPartAP, PastPartAgentAP, PositAdVAdj, PredVPS, PredVPSVV, PredetRNP, PrepCN, PresPartAP, PurposeVP, ReflPoss, ReflPron, ReflRNP, SlashBareV2S, SlashV2V, StrandQuestSlash, StrandRelSlash, UncontractedNeg, UttAccIP, UttAccNP, UttAdV, UttDatIP, UttDatNP, UttVPShort, WithoutVP, BaseVPS2, ConsVPS2, ConjVPS2, ComplVPS2, MkVPS2