From d5e5edb02f7ee71035722829d7598c06cbf487c4 Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Thu, 2 Jun 2022 08:52:42 +0300 Subject: [PATCH] (Est) Use correct verb form in PastPart(Agent)AP --- src/estonian/ExtendEst.gf | 33 +++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/src/estonian/ExtendEst.gf b/src/estonian/ExtendEst.gf index b8b2ebd40..80c660d0e 100644 --- a/src/estonian/ExtendEst.gf +++ b/src/estonian/ExtendEst.gf @@ -345,7 +345,7 @@ concrete ExtendEst of Extend = -- : VPSlash -> AP ; -- täna leitud PastPartAP vp = { - s = \\_,_ => vp2adv vp True (VIPass Past) ; + s = \\_,_ => vp2adv ; infl = Invariable } ; @@ -357,7 +357,8 @@ concrete ExtendEst of Extend = -- : VPSlash -> NP -> AP -- hobisukeldujate poolt leitud (süvaveepomm) PastPartAgentAP vp np = { - s = \\_,_ => appCompl True Pos by8agent_Prep np ++ vp2adv vp True (VIPass Past) ; + s = \\_,_ => appCompl True Pos by8agent_Prep np + ++ vp2adv ; infl = Invariable } ; @@ -385,17 +386,25 @@ concrete ExtendEst of Extend = -- calling infVP with the "default arguments": NPCase Nom, Pos, agrP3 Sg infVPdefault : VP -> InfForms -> Str = infVP (NPCase Nom) Pos (agrP3 Sg) ; - vp2adv : R.VP -> Bool -> VIForm -> Str = \vp,sentIsPos,vif -> - let vpforms : {fin,inf : Str} = case vif of { - VIInf if => applyInfFormsVP {stem=if ; suf="a"} vp ; --- this oper shouldn't be used if you want to use an InfForm but just trying to be robust here - _ => mkVPForms vp.v ! vif ! Simul ! Pos ! agrP3 Sg} ; - in vp.s2 ! sentIsPos ! Pos ! agrP3 Sg -- raamatut - ++ vp.adv -- paremini - ++ vp.p -- ära - ++ vpforms.fin -- tunda/tundes/tundmata/... - ++ vpforms.inf -- TODO is this necessary??? - ++ vp.ext ; + vp2adv = overload { + vp2adv : R.VP -> Bool -> VIForm -> Str = \vp,sentIsPos,vif -> + let vpforms : {fin,inf : Str} = case vif of { + VIInf if => applyInfFormsVP {stem=if ; suf="a"} vp ; --- this oper shouldn't be used if you want to use an InfForm but just trying to be robust here + _ => mkVPForms vp.v ! vif ! Simul ! Pos ! agrP3 Sg} ; + in vp.s2 ! sentIsPos ! Pos ! agrP3 Sg -- raamatut + ++ vp.adv -- paremini + ++ vp.p -- ära + ++ vpforms.fin -- tunda/tundes/tundmata/... + ++ vpforms.inf -- TODO is this necessary??? + ++ vp.ext ; + vp2adv : R.VP -> Bool -> VForm -> Str = \vp,sentIsPos,vf -> + vp.s2 ! sentIsPos ! Pos ! agrP3 Sg -- raamatut + ++ vp.adv -- paremini + ++ vp.p -- ära + ++ vp.v.s ! vf -- tuntud + ++ vp.ext + } ; --------------------------------- -- S - W