(Por) change copula type from bool to sum param

Portuguese actually has several verbs that can act as copulas,
although the main ones are ser and estar. this allows other types of
copulas to be added.
This commit is contained in:
odanoburu
2019-01-13 18:25:53 -02:00
parent 82f31077d7
commit 2f4db8e0bc
3 changed files with 15 additions and 6 deletions
+13 -4
View File
@@ -72,11 +72,20 @@ instance DiffPor of DiffRomance - [chooseTA,partAgr,vpAgrSubj,vpAgrClits] = open
in
neg.p1 ++ verb ++ bindIf refl.p2 ++ refl.p1 ++ bindIf clpr.p3 ++ clpr.p1 ++ compl ;
param
Copula = SerCop | EstarCop | FicarCop ;
oper
CopulaType = Bool ;
selectCopula = \isEstar -> case isEstar of {True => estar_V ; False => copula} ;
serCopula = False ;
estarCopula = True ;
CopulaType = Copula ;
selectCopula coptyp = case coptyp of {
SerCop => copula ;
EstarCop => estar_V ;
FicarCop => ficar_V
} ;
serCopula = SerCop ;
estarCopula = EstarCop ;
ficarCopula = FicarCop ;
oper
-- the other Cases are defined in ResRomance
+1 -1
View File
@@ -256,7 +256,7 @@ oper
mkA : (blanco : A) -> (hueso : Str) -> A -- noninflecting component after the adjective
= mkNonInflectA ;
mkA : A -> CopulaType -> A -- force copula type, e.g. "João está doente", "João é doente"
mkA : A -> CopulaType -> A -- force copula type, e.g. "João está doente", "João é doente". Choose among ``serCopula``, ``estarCopula``, and ``ficarCopula``
= adjCopula ;
} ;