mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-24 18:28:55 -06:00
adjustments in Paradigms ; lang-specific modules for all except Rus, Ara
This commit is contained in:
5
lib/resource-1.0/italian/ExtraIta.gf
Normal file
5
lib/resource-1.0/italian/ExtraIta.gf
Normal file
@@ -0,0 +1,5 @@
|
||||
concrete ExtraIta of ExtraItaAbs = ExtraRomanceIta **
|
||||
open CommonRomance, PhonoIta, ParamX, ResIta in {
|
||||
|
||||
|
||||
}
|
||||
6
lib/resource-1.0/italian/ExtraItaAbs.gf
Normal file
6
lib/resource-1.0/italian/ExtraItaAbs.gf
Normal file
@@ -0,0 +1,6 @@
|
||||
-- Structures special for Italian. These are not implemented in other
|
||||
-- Romance languages.
|
||||
|
||||
abstract ExtraItaAbs = ExtraRomanceAbs ** {
|
||||
|
||||
}
|
||||
2
lib/resource-1.0/italian/ExtraRomanceIta.gf
Normal file
2
lib/resource-1.0/italian/ExtraRomanceIta.gf
Normal file
@@ -0,0 +1,2 @@
|
||||
concrete ExtraRomanceIta of ExtraRomanceAbs = CatIta ** ExtraRomance with
|
||||
(ResRomance = ResIta) ;
|
||||
7
lib/resource-1.0/italian/Italian.gf
Normal file
7
lib/resource-1.0/italian/Italian.gf
Normal file
@@ -0,0 +1,7 @@
|
||||
--# -path=.:../romance:../abstract:../common:prelude
|
||||
|
||||
concrete Italian of ItalianAbs =
|
||||
LangIta,
|
||||
-- IrregIta,
|
||||
ExtraIta
|
||||
** {} ;
|
||||
5
lib/resource-1.0/italian/ItalianAbs.gf
Normal file
5
lib/resource-1.0/italian/ItalianAbs.gf
Normal file
@@ -0,0 +1,5 @@
|
||||
abstract ItalianAbs =
|
||||
Lang,
|
||||
-- IrregItaAbs,
|
||||
ExtraItaAbs
|
||||
** {} ;
|
||||
@@ -130,7 +130,7 @@ lin
|
||||
old_A = prefA (regADeg "vecchio") ;
|
||||
open_V2 = dirV2 (verboV (aprire_102 "aprire")) ;
|
||||
paint_V2A =
|
||||
mkV2A (verboV (cingere_31 "pingere")) accusative (mkPreposition "in") ;
|
||||
mkV2A (verboV (cingere_31 "pingere")) accusative (mkPrep "in") ; ----
|
||||
paper_N = regN "carta" ;
|
||||
paris_PN = mkPN "Parigi" masculine ;
|
||||
peace_N = femN (regN "pace") ;
|
||||
|
||||
@@ -58,13 +58,13 @@ oper
|
||||
-- amalgamate with the following word (the 'genitive' "de" and the
|
||||
-- 'dative' "à").
|
||||
|
||||
Preposition : Type ;
|
||||
Prep : Type ;
|
||||
|
||||
accusative : Preposition ;
|
||||
genitive : Preposition ;
|
||||
dative : Preposition ;
|
||||
accusative : Prep ;
|
||||
genitive : Prep ;
|
||||
dative : Prep ;
|
||||
|
||||
mkPreposition : Str -> Preposition ;
|
||||
mkPrep : Str -> Prep ;
|
||||
|
||||
--2 Nouns
|
||||
|
||||
@@ -98,7 +98,7 @@ oper
|
||||
--
|
||||
-- Relational nouns ("figlio di x") need a case and a preposition.
|
||||
|
||||
mkN2 : N -> Preposition -> N2 ;
|
||||
mkN2 : N -> Prep -> N2 ;
|
||||
|
||||
-- The most common cases are the genitive "di" and the dative "a",
|
||||
-- with the empty preposition.
|
||||
@@ -108,7 +108,7 @@ oper
|
||||
|
||||
-- Three-place relational nouns ("la connessione di x a y") need two prepositions.
|
||||
|
||||
mkN3 : N -> Preposition -> Preposition -> N3 ;
|
||||
mkN3 : N -> Prep -> Prep -> N3 ;
|
||||
|
||||
|
||||
--3 Relational common noun phrases
|
||||
@@ -123,7 +123,8 @@ oper
|
||||
--
|
||||
-- Proper names need a string and a gender.
|
||||
|
||||
mkPN : Str -> Gender -> PN ; -- Jean
|
||||
mkPN : Str -> Gender -> PN ;
|
||||
regPN : Str -> PN ; -- masculine
|
||||
|
||||
-- To form a noun phrase that can also be plural,
|
||||
-- you can use the worst-case function.
|
||||
@@ -153,7 +154,7 @@ oper
|
||||
--
|
||||
-- Two-place adjectives need a preposition for their second argument.
|
||||
|
||||
mkA2 : A -> Preposition -> A2 ;
|
||||
mkA2 : A -> Prep -> A2 ;
|
||||
|
||||
--3 Comparison adjectives
|
||||
|
||||
@@ -217,7 +218,7 @@ oper
|
||||
-- Two-place verbs need a preposition, except the special case with direct object.
|
||||
-- (transitive verbs). Notice that a particle comes from the $V$.
|
||||
|
||||
mkV2 : V -> Preposition -> V2 ;
|
||||
mkV2 : V -> Prep -> V2 ;
|
||||
|
||||
dirV2 : V -> V2 ;
|
||||
|
||||
@@ -230,9 +231,9 @@ oper
|
||||
-- Three-place (ditransitive) verbs need two prepositions, of which
|
||||
-- the first one or both can be absent.
|
||||
|
||||
mkV3 : V -> Preposition -> Preposition -> V3 ; -- parler, à, de
|
||||
dirV3 : V -> Preposition -> V3 ; -- donner,_,à
|
||||
dirdirV3 : V -> V3 ; -- donner,_,_
|
||||
mkV3 : V -> Prep -> Prep -> V3 ; -- parlare, a, di
|
||||
dirV3 : V -> Prep -> V3 ; -- dare,_,a
|
||||
dirdirV3 : V -> V3 ; -- dare,_,_
|
||||
|
||||
|
||||
--3 Other complement patterns
|
||||
@@ -242,20 +243,20 @@ oper
|
||||
|
||||
mkV0 : V -> V0 ;
|
||||
mkVS : V -> VS ;
|
||||
mkV2S : V -> Preposition -> V2S ;
|
||||
mkVV : V -> VV ; -- plain infinitive: "je veux parler"
|
||||
deVV : V -> VV ; -- "j'essaie de parler"
|
||||
aVV : V -> VV ; -- "j'arrive à parler"
|
||||
mkV2V : V -> Preposition -> Preposition -> V2V ;
|
||||
mkV2S : V -> Prep -> V2S ;
|
||||
mkVV : V -> VV ; -- plain infinitive: "voglio parlare"
|
||||
deVV : V -> VV ; -- "cerco di parlare"
|
||||
aVV : V -> VV ; -- "arrivo a parlare"
|
||||
mkV2V : V -> Prep -> Prep -> V2V ;
|
||||
mkVA : V -> VA ;
|
||||
mkV2A : V -> Preposition -> Preposition -> V2A ;
|
||||
mkV2A : V -> Prep -> Prep -> V2A ;
|
||||
mkVQ : V -> VQ ;
|
||||
mkV2Q : V -> Preposition -> V2Q ;
|
||||
mkV2Q : V -> Prep -> V2Q ;
|
||||
|
||||
mkAS : A -> AS ;
|
||||
mkA2S : A -> Preposition -> A2S ;
|
||||
mkAV : A -> Preposition -> AV ;
|
||||
mkA2V : A -> Preposition -> Preposition -> A2V ;
|
||||
mkA2S : A -> Prep -> A2S ;
|
||||
mkAV : A -> Prep -> AV ;
|
||||
mkA2V : A -> Prep -> Prep -> A2V ;
|
||||
|
||||
-- Notice: categories $V2S, V2V, V2Q$ are in v 1.0 treated
|
||||
-- just as synonyms of $V2$, and the second argument is given
|
||||
@@ -266,11 +267,12 @@ oper
|
||||
AS, A2S, AV, A2V : Type ;
|
||||
|
||||
|
||||
--.
|
||||
--2 The definitions of the paradigms
|
||||
--
|
||||
-- The definitions should not bother the user of the API. So they are
|
||||
-- hidden from the document.
|
||||
--.
|
||||
|
||||
|
||||
Gender = MorphoIta.Gender ;
|
||||
Number = MorphoIta.Number ;
|
||||
@@ -279,11 +281,11 @@ oper
|
||||
singular = Sg ;
|
||||
plural = Pl ;
|
||||
|
||||
Preposition = Compl ;
|
||||
Prep = Compl ;
|
||||
accusative = complAcc ;
|
||||
genitive = complGen ;
|
||||
dative = complDat ;
|
||||
mkPreposition p = {s = p ; c = Acc ; isDir = False} ;
|
||||
mkPrep p = {s = p ; c = Acc ; isDir = False} ;
|
||||
|
||||
mkN x y g = mkNounIrreg x y g ** {lock_N = <>} ;
|
||||
regN x = mkNomReg x ** {lock_N = <>} ;
|
||||
@@ -298,6 +300,7 @@ oper
|
||||
mkN3 = \n,p,q -> n ** {lock_N3 = <> ; c2 = p ; c3 = q} ;
|
||||
|
||||
mkPN x g = {s = x ; g = g} ** {lock_PN = <>} ;
|
||||
regPN x = mkPN x masculine ;
|
||||
mkNP x g n = {s = (pn2np (mkPN x g)).s; a = agrP3 g n ; hasClit = False} ** {lock_NP = <>} ;
|
||||
|
||||
mkA a b c d e =
|
||||
|
||||
@@ -6,7 +6,7 @@ concrete StructuralIta of Structural = CatIta **
|
||||
lin
|
||||
|
||||
above_Prep = {s = ["sopra"] ; c = MorphoIta.genitive ; isDir = False} ;
|
||||
after_Prep = mkPreposition "dopo" ;
|
||||
after_Prep = mkPrep "dopo" ;
|
||||
all_Predet = {
|
||||
s = \\a,c => prepCase c ++ aagrForms "tutto" "tutta" "tutti" "tutte" ! a ;
|
||||
c = Nom
|
||||
@@ -16,16 +16,16 @@ lin
|
||||
although_Subj = ss "benché" ** {m = Conjunct} ;
|
||||
and_Conj = ss "e" ** {n = Pl} ;
|
||||
because_Subj = ss "perché" ** {m = Indic} ;
|
||||
before_Prep = mkPreposition "prima" ;
|
||||
behind_Prep = mkPreposition "dietro" ;
|
||||
between_Prep = mkPreposition "fra" ;
|
||||
before_Prep = mkPrep "prima" ;
|
||||
behind_Prep = mkPrep "dietro" ;
|
||||
between_Prep = mkPrep "fra" ;
|
||||
both7and_DConj = {s1,s2 = "e" ; n = Pl} ;
|
||||
but_PConj = ss "ma" ;
|
||||
by8agent_Prep = {s = [] ; c = CPrep P_da} ;
|
||||
by8means_Prep = mkPreposition "per" ;
|
||||
by8agent_Prep = {s = [] ; c = CPrep P_da ; isDir = False} ;
|
||||
by8means_Prep = mkPrep "per" ;
|
||||
can8know_VV = mkVV (verboV (sapere_78 "sapere")) ;
|
||||
can_VV = mkVV (verboV (potere_69 "potere")) ;
|
||||
during_Prep = mkPreposition "durante" ;
|
||||
during_Prep = mkPrep "durante" ;
|
||||
either7or_DConj = {s1,s2 = "o" ; n = Sg} ;
|
||||
everybody_NP = mkNP ["tutti"] Masc Pl ;
|
||||
every_Det = {s = \\_,_ => "ogni" ; n = Sg} ;
|
||||
@@ -44,12 +44,12 @@ lin
|
||||
how_IAdv = ss "come" ;
|
||||
how8many_IDet = {s = \\g,c => prepCase c ++ genForms "quanti" "quante" ! g ; n = Pl} ;
|
||||
if_Subj = ss "se" ** {m = Indic} ;
|
||||
in8front_Prep = mkPreposition "davanti" ;
|
||||
in8front_Prep = mkPrep "davanti" ;
|
||||
i_Pron =
|
||||
mkPronoun
|
||||
"io" "mi" "mi" "me" "me" "mio" "mia" "miei" "mie"
|
||||
Fem Sg P1 ;
|
||||
in_Prep = {s = [] ; c = CPrep P_in} ;
|
||||
in_Prep = {s = [] ; c = CPrep P_in ; isDir = False} ;
|
||||
it_Pron =
|
||||
mkPronoun
|
||||
"lui" "lo" "gli" "glie" "lui" "suo" "sua" "suoi" "sue"
|
||||
@@ -61,7 +61,7 @@ lin
|
||||
much_Det = {s = \\g,c => prepCase c ++ genForms "molto" "molta" ! g ; n = Sg} ;
|
||||
must_VV = mkVV (verboV (dovere_47 "dovere")) ;
|
||||
no_Phr = ss "no" ;
|
||||
on_Prep = {s = [] ; c = CPrep P_su} ;
|
||||
on_Prep = {s = [] ; c = CPrep P_su ; isDir = False} ;
|
||||
one_Quant = {s = \\g,c => prepCase c ++ genForms "uno" "una" ! g} ;
|
||||
only_Predet = {s = \\_,c => prepCase c ++ "soltanto" ; c = Nom} ; --- solo|a|i|e
|
||||
or_Conj = {s = "o" ; n = Sg} ;
|
||||
@@ -103,10 +103,10 @@ lin
|
||||
} ;
|
||||
this_NP = pn2np (mkPN ["questo"] Masc) ;
|
||||
those_NP = mkNP ["quelle"] Fem Pl ;
|
||||
through_Prep = mkPreposition "per" ;
|
||||
through_Prep = mkPrep "per" ;
|
||||
too_AdA = ss "troppo" ;
|
||||
to_Prep = complDat ;
|
||||
under_Prep = mkPreposition "sotto" ;
|
||||
under_Prep = mkPrep "sotto" ;
|
||||
very_AdA = ss "molto" ;
|
||||
want_VV = mkVV (verboV (volere_96 "volere")) ;
|
||||
we_Pron =
|
||||
@@ -122,8 +122,8 @@ lin
|
||||
whoPl_IP = {s = \\c => prepCase c ++ "chi" ; a = aagr Fem Pl} ;
|
||||
whoSg_IP = {s = \\c => prepCase c ++ "chi" ; a = aagr Fem Sg} ;
|
||||
why_IAdv = ss "perché" ;
|
||||
without_Prep = mkPreposition "senza" ;
|
||||
with_Prep = {s = [] ; c = CPrep P_con} ;
|
||||
without_Prep = mkPrep "senza" ;
|
||||
with_Prep = {s = [] ; c = CPrep P_con ; isDir = False} ;
|
||||
yes_Phr = ss "sì" ;
|
||||
youSg_Pron = mkPronoun
|
||||
"tu" "ti" "ti" "te" "te" "tuo" "tua" "tuoi" "tue"
|
||||
|
||||
Reference in New Issue
Block a user