mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-05-27 17:08:54 -06:00
(Romance) WIP: remove comparative más,più from A
This commit is contained in:
@@ -3,25 +3,24 @@ incomplete concrete AdjectiveRomance of Adjective =
|
|||||||
flags coding=utf8;
|
flags coding=utf8;
|
||||||
lin
|
lin
|
||||||
|
|
||||||
PositA a = {
|
PositA a = a ** {
|
||||||
s = a.s ! Posit ;
|
s = a.s ! Posit ;
|
||||||
isPre = a.isPre ;
|
|
||||||
copTyp = a.copTyp
|
|
||||||
} ;
|
} ;
|
||||||
ComparA a np = {
|
ComparA a np = a ** {
|
||||||
s = \\af => a.s ! Compar ! af ++ conjThan ++ (np.s ! Nom).ton ;
|
s = \\af =>
|
||||||
|
let compar : Str = case a.isDeg of {
|
||||||
|
True => a.s ! Compar ! af ; -- bueno, mejor
|
||||||
|
False => piuComp ++ a.s ! Posit ! af } ; -- cher, plus cher
|
||||||
|
in compar ++ conjThan ++ (np.s ! Nom).ton ;
|
||||||
isPre = False ;
|
isPre = False ;
|
||||||
copTyp = a.copTyp
|
|
||||||
} ;
|
} ;
|
||||||
CAdvAP ad ap np = {
|
CAdvAP ad ap np = {
|
||||||
s = \\af => ad.s ++ ap.s ! af ++ ad.p ++ (np.s ! Nom).ton ;
|
s = \\af => ad.s ++ ap.s ! af ++ ad.p ++ (np.s ! Nom).ton ;
|
||||||
isPre = False ;
|
isPre = False ;
|
||||||
copTyp = ap.copTyp
|
copTyp = ap.copTyp
|
||||||
} ;
|
} ;
|
||||||
UseComparA a = {
|
UseComparA a = a ** {
|
||||||
s = \\af => a.s ! Compar ! af ;
|
s = \\af => a.s ! Compar ! af ;
|
||||||
isPre = a.isPre ;
|
|
||||||
copTyp = a.copTyp
|
|
||||||
} ;
|
} ;
|
||||||
AdjOrd ord = {
|
AdjOrd ord = {
|
||||||
s = \\af => ord.s ! aform2aagr af ; ----
|
s = \\af => ord.s ! aform2aagr af ; ----
|
||||||
|
|||||||
@@ -104,8 +104,8 @@ incomplete concrete CatRomance of Cat = CommonX - [SC,Pol]
|
|||||||
V3, V2A, V2V = Verb ** {c2,c3 : Compl} ;
|
V3, V2A, V2V = Verb ** {c2,c3 : Compl} ;
|
||||||
VS = Verb ** {m : RPolarity => Mood} ;
|
VS = Verb ** {m : RPolarity => Mood} ;
|
||||||
|
|
||||||
A = {s : Degree => AForm => Str ; isPre : Bool ; copTyp : CopulaType} ;
|
A = {s : Degree => AForm => Str ; isPre : Bool ; copTyp : CopulaType ; isDeg : Bool} ;
|
||||||
A2 = {s : Degree => AForm => Str ; c2 : Compl ; copTyp : CopulaType} ;
|
A2 = {s : Degree => AForm => Str ; c2 : Compl ; copTyp : CopulaType ; isDeg : Bool} ;
|
||||||
|
|
||||||
N = Noun ;
|
N = Noun ;
|
||||||
N2 = Noun ** {c2 : Compl} ;
|
N2 = Noun ** {c2 : Compl} ;
|
||||||
|
|||||||
@@ -43,7 +43,7 @@ interface DiffRomance = open CommonRomance, Prelude in {
|
|||||||
|
|
||||||
oper clitInf : Bool -> Str -> Str -> Str ;
|
oper clitInf : Bool -> Str -> Str -> Str ;
|
||||||
|
|
||||||
-- To render pronominal arguments as clitics and/or ordinary complements.
|
-- To render pronominal arguments as clitics and/or ordinary complements.
|
||||||
-- Returns $True$ if there are any clitics.
|
-- Returns $True$ if there are any clitics.
|
||||||
|
|
||||||
oper pronArg : Number -> Person -> CAgr -> CAgr -> Str * Str * Bool ;
|
oper pronArg : Number -> Person -> CAgr -> CAgr -> Str * Str * Bool ;
|
||||||
@@ -100,6 +100,8 @@ interface DiffRomance = open CommonRomance, Prelude in {
|
|||||||
|
|
||||||
subjIf : Str ;
|
subjIf : Str ;
|
||||||
|
|
||||||
|
piuComp : Str ; -- to form comparative and superlative: plus cher, más grande, …
|
||||||
|
|
||||||
relPron : Bool => AAgr => Case => Str ;
|
relPron : Bool => AAgr => Case => Str ;
|
||||||
pronSuch : AAgr => Str ;
|
pronSuch : AAgr => Str ;
|
||||||
|
|
||||||
@@ -114,7 +116,7 @@ interface DiffRomance = open CommonRomance, Prelude in {
|
|||||||
--2 Constants needed in type signatures above
|
--2 Constants needed in type signatures above
|
||||||
|
|
||||||
param
|
param
|
||||||
Case = Nom | Acc | CPrep Prepos ;
|
Case = Nom | Acc | CPrep Prepos ;
|
||||||
|
|
||||||
oper
|
oper
|
||||||
Verb = {s : VF => Str ; vtyp : VType ; p : Str} ;
|
Verb = {s : VF => Str ; vtyp : VType ; p : Str} ;
|
||||||
@@ -122,7 +124,7 @@ oper
|
|||||||
VPAgrType : Type = Str * Bool ; ---- originally VPAgr, expensive
|
VPAgrType : Type = Str * Bool ; ---- originally VPAgr, expensive
|
||||||
getVPAgr : Verb -> VPAgrType = \v -> <verbDefaultPart v, partAgr v.vtyp> ; -- str may be used
|
getVPAgr : Verb -> VPAgrType = \v -> <verbDefaultPart v, partAgr v.vtyp> ; -- str may be used
|
||||||
vpAgrSubj : Verb -> VPAgrType = \v -> <verbDefaultPart v, True> ; -- str not used but subject instead ---- VPAgrSubj
|
vpAgrSubj : Verb -> VPAgrType = \v -> <verbDefaultPart v, True> ; -- str not used but subject instead ---- VPAgrSubj
|
||||||
vpAgrClits : Verb -> AAgr -> VPAgrType = \v,a -> <v.s ! (VPart a.g a.n), False> ; -- str used from clitic ---- vpAgrClit
|
vpAgrClits : Verb -> AAgr -> VPAgrType = \v,a -> <v.s ! (VPart a.g a.n), False> ; -- str used from clitic ---- vpAgrClit
|
||||||
verbDefaultPart : Verb -> Str = \v -> v.s ! (VPart Masc Sg) ;
|
verbDefaultPart : Verb -> Str = \v -> v.s ! (VPart Masc Sg) ;
|
||||||
|
|
||||||
|
|
||||||
@@ -165,7 +167,7 @@ oper
|
|||||||
-- AR 21/2/2013
|
-- AR 21/2/2013
|
||||||
-- inverted clause order, only deviant in Fre where also the intervening -t- has to be taken to account
|
-- inverted clause order, only deviant in Fre where also the intervening -t- has to be taken to account
|
||||||
|
|
||||||
invertedClause :
|
invertedClause :
|
||||||
VType -> (RTense * Anteriority * Number * Person) -> Bool -> (Str * Str) -> Str -> (clit,fin,inf,compl,subj,ext : Str) -> Str =
|
VType -> (RTense * Anteriority * Number * Person) -> Bool -> (Str * Str) -> Str -> (clit,fin,inf,compl,subj,ext : Str) -> Str =
|
||||||
\_,_,_,neg,_,clit,fin,inf,compl,subj,ext -> neg.p1 ++ clit ++ fin ++ neg.p2 ++ inf ++ compl ++ subj ++ ext ;
|
\_,_,_,neg,_,clit,fin,inf,compl,subj,ext -> neg.p1 ++ clit ++ fin ++ neg.p2 ++ inf ++ compl ++ subj ++ ext ;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user