From 3609202c52e97baaf5e7b7cf5e628eb60ae996f8 Mon Sep 17 00:00:00 2001 From: krasimir Date: Thu, 11 Aug 2016 09:44:13 +0000 Subject: [PATCH] implemented negation in Slovenian based on Anna Ehrlemark's mini resource --- lib/src/slovenian/ResSlv.gf | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/lib/src/slovenian/ResSlv.gf b/lib/src/slovenian/ResSlv.gf index 327a25265..daba9ecd9 100644 --- a/lib/src/slovenian/ResSlv.gf +++ b/lib/src/slovenian/ResSlv.gf @@ -32,12 +32,17 @@ oper VP = {s : VForm => Str; s2 : Agr => Str} ; - predV : (VForm => Str) -> Tense => Agr => Str = + neg : Polarity => Tense => Str = + table {Pos => \\_ => "" ; + Neg => table {Past => "ni"; _ => "ne"} + } ; + + predV : (VForm => Str) -> Tense => Polarity => Agr => Str = \v -> table { - Pres => \\a => v ! VPres a.n a.p ; - Past => \\a => sem_V ! a.n ! a.p ++ v ! VPastPart a.g a.n ; - Fut => \\a => bom_V ! a.n ! a.p ++ v ! VPastPart a.g a.n ; - Cond => \\a => "bi" ++ v ! VPastPart a.g a.n + Pres => \\p,a => neg ! p ! Pres ++ v ! VPres a.n a.p ; + Past => \\p,a => neg ! p ! Past + sem_V ! a.n ! a.p ++ v ! VPastPart a.g a.n ; + Fut => \\p,a => neg ! p ! Fut ++ bom_V ! a.n ! a.p ++ v ! VPastPart a.g a.n ; + Cond => \\p,a => neg ! p ! Cond ++ "bi" ++ v ! VPastPart a.g a.n } ; sem_V : Number => Person => Str = @@ -85,7 +90,7 @@ oper mkClause : Str -> Agr -> VP -> Clause = \subj,agr,vp -> { s = \\t,a,p => - subj ++ predV vp.s ! t ! agr ++ vp.s2 ! agr + subj ++ predV vp.s ! t ! p ! agr ++ vp.s2 ! agr } ; insertObj : (Agr => Str) -> VP -> VP = \obj,vp -> vp ** {