From eb2f903ade80f8505c2d27691ffea83032991d6e Mon Sep 17 00:00:00 2001 From: aarne Date: Mon, 25 Oct 2010 19:56:47 +0000 Subject: [PATCH] trying to find some inefficiencies in Finnish resource --- src/finnish/ResFin.gf | 15 +++++++++++++++ src/finnish/VerbFin.gf | 3 ++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/finnish/ResFin.gf b/src/finnish/ResFin.gf index 38cba5965..036c4b8e1 100644 --- a/src/finnish/ResFin.gf +++ b/src/finnish/ResFin.gf @@ -142,12 +142,27 @@ param appCompl : Bool -> Polarity -> Compl -> NP -> Str = \isFin,b,co,np -> let + c = case co.c of { + NPAcc => case b of { + Neg => NPCase Part ; -- en näe taloa/sinua + Pos => case isFin of { + True => NPAcc ; -- näen/täytyy nähdä sinut + _ => case np.isPron of { + False => NPCase Nom ; -- täytyy nähdä talo + _ => NPAcc + } + } + } ; + _ => co.c + } ; +{- c = case of { <_, Neg, NPAcc,_> => NPCase Part ; -- en näe taloa/sinua <_, Pos, NPAcc,True> => NPAcc ; -- näen/täytyy sinut => NPCase Nom ; -- täytyy nähdä talo <_,_,coc,_> => coc } ; +-} nps = np.s ! c in preOrPost co.isPre co.s nps ; diff --git a/src/finnish/VerbFin.gf b/src/finnish/VerbFin.gf index 04a057d6b..9f6e20837 100644 --- a/src/finnish/VerbFin.gf +++ b/src/finnish/VerbFin.gf @@ -69,7 +69,8 @@ concrete VerbFin of Verb = CatFin ** open Prelude, ResFin in { SlashV2VNP v np vp = insertObj - (\\fin,b,a => appCompl fin b v.c2 np ++ infVP v.sc b a vp v.vi) + (\\fin,b,a => appCompl True b v.c2 np ++ ---- fin -> stack overflow + infVP v.sc b a vp v.vi) (predV v) ** {c2 = vp.c2} ; AdvVP vp adv = insertObj (\\_,_,_ => adv.s) vp ;