From c4f39c0a7421c7f1161fadad4aef6be82181f49e Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Thu, 2 Jun 2022 08:51:28 +0300 Subject: [PATCH 1/3] (Est) Use Extend in AllEstAbs instead of Extra --- src/estonian/AllEstAbs.gf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/estonian/AllEstAbs.gf b/src/estonian/AllEstAbs.gf index b49593b2..bc5ae3cc 100644 --- a/src/estonian/AllEstAbs.gf +++ b/src/estonian/AllEstAbs.gf @@ -1,4 +1,4 @@ abstract AllEstAbs = Lang, - ExtraEstAbs + Extend ** {} ; From 3026b8b59a8918f9c01e243163a95206d9fdea96 Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Thu, 2 Jun 2022 08:51:44 +0300 Subject: [PATCH 2/3] (Est) Add AdvVPSlash and VPSlashPrep --- src/estonian/VerbEst.gf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/estonian/VerbEst.gf b/src/estonian/VerbEst.gf index 2fa22f13..6abcfc16 100644 --- a/src/estonian/VerbEst.gf +++ b/src/estonian/VerbEst.gf @@ -75,6 +75,10 @@ concrete VerbEst of Verb = CatEst ** open Prelude, ResEst in { AdvVP vp adv = insertAdv adv.s vp ; + AdvVPSlash vp adv = insertAdv adv.s vp ** vp ; + + VPSlashPrep vp prep = vp ** {c2 = prep} ; + AdVVP adv vp = insertAdv adv.s vp ; ReflVP v = insertObjPre (\\fin,b,agr => appCompl fin b v.c2 (reflPron agr)) v ; From d5e5edb02f7ee71035722829d7598c06cbf487c4 Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Thu, 2 Jun 2022 08:52:42 +0300 Subject: [PATCH 3/3] (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 b8b2ebd4..80c660d0 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