mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-21 09:02:50 -06:00
some fixes and new functionalities in Ita. Note: MassNP is now without "di" like in Spa and unlike in Fre
This commit is contained in:
@@ -73,11 +73,14 @@ instance DiffIta of DiffRomance - [contractInf] = open CommonRomance, PhonoIta,
|
|||||||
|
|
||||||
possCase = artDef False ;
|
possCase = artDef False ;
|
||||||
|
|
||||||
|
partitive = \_,c -> prepCase c ;
|
||||||
|
|
||||||
|
{-
|
||||||
partitive = \g,c -> case c of {
|
partitive = \g,c -> case c of {
|
||||||
CPrep P_di => "di" ;
|
CPrep P_di => "di" ;
|
||||||
_ => prepCase c ++ artDef False g Sg (CPrep P_di)
|
_ => prepCase c ++ artDef False g Sg (CPrep P_di)
|
||||||
} ;
|
} ;
|
||||||
|
-}
|
||||||
conjunctCase : Case -> Case = \c -> case c of {
|
conjunctCase : Case -> Case = \c -> case c of {
|
||||||
Nom => Nom ;
|
Nom => Nom ;
|
||||||
_ => Acc
|
_ => Acc
|
||||||
|
|||||||
@@ -13,10 +13,17 @@ oper
|
|||||||
mkIQuant : Str -> IQuant = \s ->
|
mkIQuant : Str -> IQuant = \s ->
|
||||||
{s = \\_,_,c => prepCase c ++ s ; lock_IQuant = <>} ;
|
{s = \\_,_,c => prepCase c ++ s ; lock_IQuant = <>} ;
|
||||||
|
|
||||||
mkPredet : Str -> Str -> Prep -> Bool -> Predet = \m,f,c,p -> lin Predet {
|
mkPredet = overload {
|
||||||
s = \\g,k => prepCase k ++ case g.g of {Masc => m ; Fem => f} ;
|
mkPredet : A -> Predet = \adj -> lin Predet {
|
||||||
c = c.c ;
|
s = \\a,c => prepCase c ++ adj.s ! Posit ! AF a.g a.n ;
|
||||||
a = if_then_else PAgr p (PAg Sg) PNoAg ---- e,g, "chacun de"; other possibilities?
|
c = Nom ;
|
||||||
|
a = PNoAg
|
||||||
|
} ;
|
||||||
|
mkPredet : Str -> Str -> Prep -> Bool -> Predet = \m,f,c,p -> lin Predet {
|
||||||
|
s = \\g,k => prepCase k ++ case g.g of {Masc => m ; Fem => f} ; ---- number?
|
||||||
|
c = c.c ;
|
||||||
|
a = if_then_else PAgr p (PAg Sg) PNoAg ---- e,g, "chacun de"; other possibilities?
|
||||||
|
} ;
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -75,7 +75,10 @@ oper
|
|||||||
|
|
||||||
-- other prepositions
|
-- other prepositions
|
||||||
|
|
||||||
mkPrep : Str -> Prep ; -- other prepositions, e.g. "dopo"
|
mkPrep : overload {
|
||||||
|
mkPrep : Str -> Prep ; -- simple preposition (other than a, di, con, da, in, su)
|
||||||
|
mkPrep : Str -> Prep -> Prep ; -- complex preposition e.g. "vicino a"
|
||||||
|
} ;
|
||||||
|
|
||||||
|
|
||||||
--2 Nouns
|
--2 Nouns
|
||||||
@@ -328,7 +331,11 @@ oper
|
|||||||
accusative = lin Prep complAcc ;
|
accusative = lin Prep complAcc ;
|
||||||
genitive, di_Prep = lin Prep complGen ;
|
genitive, di_Prep = lin Prep complGen ;
|
||||||
dative, a_Prep = lin Prep complDat ;
|
dative, a_Prep = lin Prep complDat ;
|
||||||
mkPrep p = lin Prep {s = p ; c = Acc ; isDir = False ; lock_Prep = <>} ;
|
|
||||||
|
mkPrep = overload {
|
||||||
|
mkPrep : Str -> Prep = \p -> {s = p ; c = Acc ; isDir = False ; lock_Prep = <>} ;
|
||||||
|
mkPrep : Str -> Prep -> Prep = \s,c-> {s = s ; c = c.c ; isDir = False ; lock_Prep = <>}
|
||||||
|
} ;
|
||||||
|
|
||||||
con_Prep = {s = [] ; c = CPrep P_con ; isDir = False ; lock_Prep = <>} ;
|
con_Prep = {s = [] ; c = CPrep P_con ; isDir = False ; lock_Prep = <>} ;
|
||||||
da_Prep = {s = [] ; c = CPrep P_da ; isDir = False ; lock_Prep = <>} ;
|
da_Prep = {s = [] ; c = CPrep P_da ; isDir = False ; lock_Prep = <>} ;
|
||||||
|
|||||||
@@ -57,6 +57,10 @@ oper
|
|||||||
AF _ n => n ;
|
AF _ n => n ;
|
||||||
_ => Sg -- "le plus lentement"
|
_ => Sg -- "le plus lentement"
|
||||||
} ;
|
} ;
|
||||||
|
aform2aagr : AForm -> AAgr = \a -> case a of {
|
||||||
|
AF g n => aagr g n ;
|
||||||
|
_ => aagr Masc Sg -- "le plus lentement"
|
||||||
|
} ;
|
||||||
|
|
||||||
conjGender : Gender -> Gender -> Gender = \m,n ->
|
conjGender : Gender -> Gender -> Gender = \m,n ->
|
||||||
case m of {
|
case m of {
|
||||||
|
|||||||
Reference in New Issue
Block a user