ExtendFre with some definitions

This commit is contained in:
Aarne Ranta
2017-11-08 10:36:49 +01:00
parent 161e981a29
commit 72b257b9b7
3 changed files with 54 additions and 1 deletions

View File

@@ -3,5 +3,5 @@
concrete AllFre of AllFreAbs =
LangFre,
IrregFre,
ExtraFre
ExtendFre ---- ExtraFre
** {} ;

43
src/french/ExtendFre.gf Normal file
View File

@@ -0,0 +1,43 @@
--# -path=alltenses:../common:../abstract
concrete ExtendFre of Extend =
CatFre ** ExtendFunctor -
[
---- iFem_Pron, youFem_Pron, weFem_Pron, youPlFem_Pron, theyFem_Pron, youPolFem_Pron, youPolPl_Pron, youPolPlFem_Pron,
ExistCN, ExistMassCN, ExistPluralCN
] -- put the names of your own definitions here
with
(Grammar = GrammarFre) **
open
GrammarFre,
ResFre,
MorphoFre,
PhonoFre,
Coordination,
Prelude,
ParadigmsFre in {
-- put your own definitions here
lin
ExistCN cn =
let
pos = ExistNP (DetCN (DetQuant IndefArt NumSg) cn) ;
neg = ExistNP (DetCN (DetQuant de_Quant NumSg) cn) ;
in posNegClause pos neg PNeg.p ;
ExistMassCN cn =
let
pos = ExistNP (MassNP cn) ;
neg = ExistNP (DetCN (DetQuant de_Quant NumSg) cn) ;
in posNegClause pos neg PNeg.p ;
ExistPluralCN cn =
let
pos = ExistNP (DetCN (DetQuant IndefArt NumPl) cn) ;
neg = ExistNP (DetCN (DetQuant de_Quant NumPl) cn) ;
in posNegClause pos neg PNeg.p ;
oper
de_Quant : Quant = IndefArt ** {s = \\_,_,_,_ => elisDe} ;
}

View File

@@ -178,6 +178,16 @@ oper
mkVPSlash : Compl -> VP -> VP ** {c2 : Compl} = \c,vp -> vp ** {c2 = c} ;
Clause : Type = {s : Direct => RTense => Anteriority => RPolarity => Mood => Str} ;
-- for pos/neg variation other than negation word, e.g. "il y a du vin" / "il n'y a pas de vin"
posNegClause : Clause -> Clause -> RPolarity -> Clause = \pos,neg,pol -> {
s = \\d,t,a,b,m => case b of {
RPos => pos.s ! d ! t ! a ! b ! m ;
_ => neg.s ! d ! t ! a ! pol ! m
}
} ;
mkClause : Str -> Bool -> Bool -> Agr -> VP ->
{s : Direct => RTense => Anteriority => RPolarity => Mood => Str} =
mkClausePol False ;