italian and spanish polite imperatives

This commit is contained in:
aarne
2006-12-14 10:46:38 +00:00
parent 7d6c6a52cd
commit c9f3540395
10 changed files with 23 additions and 21 deletions

View File

@@ -49,7 +49,7 @@ interface DiffRomance = open CommonRomance, Prelude in {
-- To render imperatives (with their clitics etc).
oper mkImperative : Person -> CommonRomance.VP -> {s : Polarity => AAgr => Str} ;
oper mkImperative : Bool -> Person -> CommonRomance.VP -> {s : Polarity => AAgr => Str} ;
--2 Constants that must derivatively depend on language

View File

@@ -61,11 +61,12 @@ oper
habet : TMood -> Agr -> Str = \tm,a -> aux ! VFin tm a.n a.p ;
habere : Str = aux ! VInfin False ;
vimp : Agr -> Str = \a -> verb.s ! VImper (case <a.n,a.p> of {
<Pl,P1> => PlP1 ;
<Sg,_> => SgP2 ;
<Pl,_> => PlP2
}) ;
vimp : Agr -> Str = \a -> case <a.n,a.p> of {
<Pl,P1> => verb.s ! VImper PlP1 ;
<_, P3> => verb.s ! VFin (VPres Conjunct) a.n P3 ;
<Sg,_> => verb.s ! VImper SgP2 ;
<Pl,_> => verb.s ! VImper PlP2
} ;
vf : (Agr -> Str) -> (AAgr -> Str) -> {
fin : Agr => Str ;

View File

@@ -10,8 +10,7 @@ incomplete concrete SentenceRomance of Sentence =
ImpVP vp = {
s = \\p,i,g => case i of {
ImpF n True => (mkImperative P2 vp).s ! p ! (aagr g Pl) ; --- fix for Spa,Ita
ImpF n False => (mkImperative P2 vp).s ! p ! (aagr g n)
ImpF n b => (mkImperative b P2 vp).s ! p ! (aagr g n)
}
} ;