From 1f7e16642bdcde469478408e4269cffbbf66ef63 Mon Sep 17 00:00:00 2001 From: Inari Listenmaa Date: Tue, 12 Apr 2022 19:01:08 +0800 Subject: [PATCH] (Est) Keep non-finite forms non-finite in PassV2 TODO: restructure VP so we retain non-finite passive forms --- src/estonian/ResEst.gf | 6 ++++++ src/estonian/VerbEst.gf | 22 ++++++++-------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/estonian/ResEst.gf b/src/estonian/ResEst.gf index 6418b9a2..0b72ab54 100644 --- a/src/estonian/ResEst.gf +++ b/src/estonian/ResEst.gf @@ -163,6 +163,12 @@ param in preOrPost co.isPre co.s nps ; + -- Used for passive; c2 of V2/VPSlash becomes sc of VP + compl2subjcase : Compl -> NPForm = \compl -> + case compl.c of { + NPCase Gen => NPCase Nom ; -- valisin koera -> koer valitakse + _ => compl.c -- rääkisin koerale -> koerale räägitakse + } ; -- For $Verb$. Verb : Type = { diff --git a/src/estonian/VerbEst.gf b/src/estonian/VerbEst.gf index 8c84e22f..7f54194a 100644 --- a/src/estonian/VerbEst.gf +++ b/src/estonian/VerbEst.gf @@ -79,20 +79,14 @@ concrete VerbEst of Verb = CatEst ** open Prelude, ResEst in { ReflVP v = insertObjPre (\\fin,b,agr => appCompl fin b v.c2 (reflPron agr)) v ; - PassV2 v = - let - vp = predV v ; - subjCase = case v.c2.c of { --this is probably a reason to not get rid of NPAcc; TODO check - NPCase Gen => NPCase Nom ; --valisin koera -> koer valitakse - _ => v.c2.c --rääkisin koerale -> koerale räägitakse - } - in { - s = \\_ => vp.s ! VIPass Pres ; - s2 = \\_,_,_ => [] ; - adv = [] ; - p = vp.p ; - ext = vp.ext ; - sc = subjCase -- koer valitakse ; koerale räägitakse + PassV2 v = + let vp = predV v in vp ** { + s = \\vf => case vf of { + VIFin t => vp.s ! VIPass t ; + -- VIImper => v.s ! ImperPass ; -- TODO: include these forms from V into VP + -- VIPresPart => v.s ! PresPart Pass ; + x => vp.s ! x } ; + sc = compl2subjcase v.c2 -- koer valitakse ; koerale räägitakse } ; ----b UseVS, UseVQ = \v -> v ** {c2 = {s = [] ; c = NPAcc ; isPre = True}} ;