1
0
forked from GitHub/gf-core

Romance negation: word order dependence

This commit is contained in:
aarne
2012-05-28 07:38:25 +00:00
parent 9f1738124e
commit 5014c38e6d
6 changed files with 18 additions and 4 deletions

View File

@@ -180,4 +180,6 @@ oper
subjPron = \_ -> [] ;
polNegDirSubj = RPos ;
}

View File

@@ -236,4 +236,6 @@ instance DiffFre of DiffRomance = open CommonRomance, PhonoFre, Prelude in {
{n = Pl ; p = P3 ; g = Fem} => "elles"
} ;
polNegDirSubj = RNeg True ;
}

View File

@@ -205,4 +205,6 @@ instance DiffIta of DiffRomance = open CommonRomance, PhonoIta, BeschIta, Prelud
subjPron = \_ -> [] ;
polNegDirSubj = RPos ;
}

View File

@@ -121,6 +121,10 @@ oper
subjPron : Agr -> Str ;
-- Whether subject negative in direct position causes negation to the sentence: "personne ne dort" vs. "nessuno dorme".
polNegDirSubj : RPolarity ;
--2 Workarounds, to be eliminated
-- This should be provided by $pronArg$ above, but causes trouble in compilation.

View File

@@ -209,12 +209,13 @@ oper
\isNeg, subj, hasClit, isPol, agr, vp -> {
s = \\d,te,a,b,m =>
let
isAnyNeg = orB isNeg vp.isNeg ;
pol = case <isAnyNeg,b> of {
<True,RPos> => RNeg True ;
pol : RPolarity = case <isNeg, vp.isNeg, b, d> of {
<_,True,RPos,_> => RNeg True ;
<True,_,RPos,DInv> => RNeg True ;
<True,_,RPos,_> => polNegDirSubj ;
_ => b
} ;
neg = vp.neg ! pol ;
gen = agr.g ;

View File

@@ -181,4 +181,7 @@ instance DiffSpa of DiffRomance = open CommonRomance, PhonoSpa, BeschSpa, Prelud
verbBeschH : Verbum -> Verb = \v -> verbBesch v ** {vtyp = VHabere} ;
subjPron = \_ -> [] ;
polNegDirSubj = RPos ;
}