forked from GitHub/gf-rgl
(Fre) Implement AForm+related opers in DiffFre
This commit is contained in:
@@ -159,10 +159,29 @@ instance DiffFre of DiffRomance - [
|
|||||||
|
|
||||||
bindHyphen : Str = BIND ++ "-" ++ BIND ;
|
bindHyphen : Str = BIND ++ "-" ++ BIND ;
|
||||||
|
|
||||||
piuComp = "plus" ;
|
-- AForm
|
||||||
|
param
|
||||||
|
AFormComplex = AF Gender Number | AAttrMasc | AA ;
|
||||||
|
oper
|
||||||
|
AForm = AFormComplex ;
|
||||||
|
aform2aagr : AForm -> AAgr = \a -> case a of {
|
||||||
|
DiffFre.AF g n => aagr g n ;
|
||||||
|
_ => aagr Masc Sg -- "le plus lentement"
|
||||||
|
} ;
|
||||||
|
genNum2Aform : Gender -> Number -> AForm = DiffFre.AF ;
|
||||||
|
genNumPos2Aform : Gender -> Number -> Bool -> AForm = \g,n,isPre ->
|
||||||
|
case <g,n,isPre> of {
|
||||||
|
<Masc,Sg,True> => AAttrMasc ;
|
||||||
|
_ => genNum2Aform g n
|
||||||
|
} ;
|
||||||
|
|
||||||
|
-- Comparatives
|
||||||
ComparAgr = AAgr ;
|
ComparAgr = AAgr ;
|
||||||
af2compar = aform2aagr ;
|
af2compar = aform2aagr ;
|
||||||
aagr2compar = id AAgr ;
|
aagr2compar = id AAgr ;
|
||||||
|
piuComp = "plus" ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CopulaType = {} ;
|
CopulaType = {} ;
|
||||||
selectCopula = \isEstar -> copula ;
|
selectCopula = \isEstar -> copula ;
|
||||||
|
|||||||
@@ -75,11 +75,12 @@ oper
|
|||||||
mkAdj' : (_,_,_,_,_ : Str) -> Adj ;
|
mkAdj' : (_,_,_,_,_ : Str) -> Adj ;
|
||||||
mkAdj' vieux vieil vieille vieuxs vieillement = {
|
mkAdj' vieux vieil vieille vieuxs vieillement = {
|
||||||
s = table {
|
s = table {
|
||||||
ASg Masc AAttr => pre {#voyelle => vieil ; "h" => vieil ; _ => vieux} ;
|
-- vieil, nouvel only comes as attributive, not predicative:
|
||||||
ASg Masc APred => vieux ; -- `ce vin est nouveau et bon', not *nouvel et bon
|
-- 'un vieil ami', but 'ce vin est nouveau et bon', not *nouvel et bon.
|
||||||
ASg Fem _ => vieille ;
|
AAttrMasc => pre {#voyelle => vieil ; "h" => vieil ; _ => vieux} ;
|
||||||
APl g => genForms vieuxs (vieille + "s") ! g ;
|
AF g Sg => genForms vieux vieille ! g ;
|
||||||
AA => vieillement
|
AF g Pl => genForms vieuxs (vieille + "s") ! g ;
|
||||||
|
AA => vieillement
|
||||||
}
|
}
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user