Maltese: all functions implemented (though not necessarily correct)

Oh, and glad Valborg!
This commit is contained in:
john
2013-04-30 14:23:17 +00:00
parent 20d63050a4
commit 6277bf04f9
18 changed files with 5514 additions and 4547 deletions

View File

@@ -5,16 +5,16 @@
-- Licensed under LGPL
concrete StructuralMlt of Structural = CatMlt **
open MorphoMlt, ResMlt, ParadigmsMlt, Prelude in {
open MorphoMlt, ResMlt, ParadigmsMlt, (C = ConstructX), Prelude in {
flags
optimize=all ;
optimize=all ;
coding=utf8 ;
lin
{- Pronoun -------------------------------------------------------------- -}
i_Pron = mkPron "jien" "i" "ni" "li" singular P1 masculine ; --- also JIENA
youSg_Pron = mkPron "int" "ek" "ek" "lek" singular P2 masculine ; --- also INTI
he_Pron = mkPron "hu" "u" "u" "lu" singular P3 masculine ; --- also HUWA
@@ -23,21 +23,31 @@ concrete StructuralMlt of Structural = CatMlt **
youPl_Pron = mkPron "intom" "kom" plural P2 masculine ;
they_Pron = mkPron "huma" "hom" plural P3 masculine ;
youPol_Pron = youSg_Pron ;
-- it_Pron = mkPron "it" "it" "its" "its" singular P3 nonhuman ;
it_Pron = he_Pron ;
whatPl_IP = mkIP ("x'" ++ BIND) plural ;
whatSg_IP = mkIP ("x'" ++ BIND) singular ;
whoPl_IP = mkIP "min" plural ;
whoSg_IP = mkIP "min" singular ;
{- Determiner ----------------------------------------------------------- -}
all_Predet = ss "kollha" ;
-- every_Det = mkDeterminerSpec singular "every" "everyone" False ;
few_Det = mkDeterminer plural "ftit" ;
many_Det = mkDeterminer plural "ħafna" ; -- bosta
-- most_Predet = ss "most" ;
-- much_Det = mkDeterminer singular "much" ;
all_Predet = ss "kollha" ;
every_Det = mkDeterminer singular "kull" ; --- KULĦADD
few_Det = mkDeterminer plural "ftit" ;
many_Det = mkDeterminer plural "ħafna" ;
most_Predet = ss "il-maġġoranza ta'" ; --- TAL-, TAN-
much_Det = mkDeterminer singular "ħafna" ;
only_Predet = ss "biss" ;
someSg_Det = mkDeterminer singular "xi" ;
somePl_Det = mkDeterminer plural "xi" ;
-- not_predet = {s = "not" ; lock_Predet = <>} ;
someSg_Det = mkDeterminer singular "xi" ;
somePl_Det = mkDeterminer plural "xi" ;
not_Predet = ss "mhux" ;
how8many_IDet = {
s = "kemm" ; -- KEMM IL-...
n = plural
} ;
{- Quantifier ----------------------------------------------------------- -}
that_Quant = mkQuant "dak" "dik" "dawk" True ;
@@ -45,7 +55,7 @@ concrete StructuralMlt of Structural = CatMlt **
no_Quant = let l_ebda = artDef ++ "ebda" in
mkQuant l_ebda l_ebda l_ebda False ;
-- which_IQuant = {s = \\_ => "which"} ;
which_IQuant = ss "liema" ;
{- Conjunction ---------------------------------------------------------- -}
@@ -82,91 +92,82 @@ concrete StructuralMlt of Structural = CatMlt **
with_Prep = mkPrep "ma'" "m'" "mal-" "mat-" "mal-" ;
except_Prep = mkPrep "apparti" ;
{- Noun phrase ---------------------------------------------------------- -}
everybody_NP = regNP "kulħadd" ;
everything_NP = regNP "kollox" ;
somebody_NP = regNP "xi ħadd" ;
something_NP = regNP "xi ħaġa" ;
nobody_NP = regNP "ħadd" ;
nothing_NP = regNP "xejn" ;
{- Subjunction ---------------------------------------------------------- -}
although_Subj = ss "avolja" ;
because_Subj = ss "għax" ;
if_Subj = ss "jekk" ;
when_Subj = ss "meta" ;
that_Subj = ss "li" ;
{- Adverb --------------------------------------------------------------- -}
almost_AdA = mkAdA "kważi" ;
almost_AdN = mkAdN "kważi" ;
always_AdV = mkAdV "dejjem" ;
at_least_AdN = mkAdN "mill-inqas" ;
at_most_AdN = mkAdN "l-iktar" ;
everywhere_Adv = mkAdv "kullimkien" ;
here_Adv = mkAdv "hawn" ;
here7to_Adv = mkAdv ["s'hawnhekk"] ;
here7from_Adv = mkAdv ["minn hawnhekk"] ;
less_CAdv = C.mkCAdv "inqas" "minn" ; --- INQAS MILL-IEĦOR
more_CAdv = C.mkCAdv "iktar" "minn" ; --- IKTAR MIT-TNEJN
quite_Adv = mkAdv "pjuttost" ;
so_AdA = mkAdA "allura" ;
somewhere_Adv = mkAdv "x'imkien" ;
there_Adv = mkAdv "hemmhekk" ;
there7to_Adv = mkAdv "s'hemmhekk" ;
there7from_Adv = mkAdv ["minn hemmhekk"] ;
too_AdA = mkAdA "ukoll" ;
very_AdA = mkAdA "ħafna" ;
as_CAdv = C.mkCAdv "" "daqs" ; -- "as good as gold"
how_IAdv = ss "kif" ;
how8much_IAdv = ss "kemm" ;
when_IAdv = ss "meta" ;
where_IAdv = ss "fejn" ;
why_IAdv = ss "għalfejn" ;
{- Verb ----------------------------------------------------------------- -}
can8know_VV = af_V ;
can_VV = sata'_V ;
must_VV = kellu_V ;
want_VV = ried_V ;
have_V2 = dirV2 (kellu_V) ;
oper
af_V = irregularV form1 (ResMlt.mkRoot "'-'-f") (ResMlt.mkPattern "a" [])
"kont naf" "kont taf" "kien jaf" "kienet taf" "konna nafu" "kontu tafu" "kienu jafu" --- will fail for negative
"naf" "taf" "jaf" "taf" "nafu" "tafu" "jafu"
"kun af" "kunu afu"
;
sata'_V = mkV "sata'" (ResMlt.mkRoot "s-t-għ") ;
ried_V = mkV "ried" (ResMlt.mkRoot "r-j-d") ;
kellu_V = irregularV form1 (ResMlt.mkRoot) (ResMlt.mkPattern)
"kelli" "kellek" "kellu" "kellha" "kellna" "kellkom" "kellhom"
"għandi" "għandek" "għandu" "għandha" "għandna" "għandkom" "għandhom"
"kollok" "kollkom"
;
{- Others --------------------------------------------------------------- -}
lin
-- almost_AdA = mkAdA "almost" ;
-- almost_AdN = mkAdN "almost" ;
-- although_Subj = ss "although" ;
-- always_AdV = mkAdV "always" ;
-- because_Subj = ss "because" ;
-- can8know_VV, can_VV = {
-- s = table {
-- VVF VInf => ["be able to"] ;
-- VVF VPres => "can" ;
-- VVF VPPart => ["been able to"] ;
-- VVF VPresPart => ["being able to"] ;
-- VVF VPast => "could" ; --# notpresent
-- VVPastNeg => "couldn't" ; --# notpresent
-- VVPresNeg => "can't"
-- } ;
-- typ = VVAux
-- } ;
-- everybody_NP = regNP "everybody" singular ;
-- everything_NP = regNP "everything" singular ;
-- everywhere_Adv = mkAdv "everywhere" ;
-- here_Adv = mkAdv "here" ;
-- here7to_Adv = mkAdv ["to here"] ;
-- here7from_Adv = mkAdv ["from here"] ;
-- how_IAdv = ss "how" ;
-- how8much_IAdv = ss "how much" ;
-- how8many_IDet = mkDeterminer plural ["how many"] ;
-- if_Subj = ss "if" ;
-- less_CAdv = C.mkCAdv "less" "than" ;
-- more_CAdv = C.mkCAdv "more" "than" ;
-- most_Predet = ss "most" ;
-- must_VV = {
-- s = table {
-- VVF VInf => ["have to"] ;
-- VVF VPres => "must" ;
-- VVF VPPart => ["had to"] ;
-- VVF VPresPart => ["having to"] ;
-- VVF VPast => ["had to"] ; --# notpresent
-- VVPastNeg => ["hadn't to"] ; --# notpresent
-- VVPresNeg => "mustn't"
-- } ;
-- typ = VVAux
-- } ;
-- no_Utt = ss "no" ;
-- please_Voc = ss "please" ;
-- quite_Adv = mkAdv "quite" ;
-- so_AdA = mkAdA "so" ;
-- somebody_NP = regNP "somebody" singular ;
-- something_NP = regNP "something" singular ;
-- somewhere_Adv = mkAdv "somewhere" ;
-- there_Adv = mkAdv "there" ;
-- there7to_Adv = mkAdv "there" ;
-- there7from_Adv = mkAdv ["from there"] ;
-- too_AdA = mkAdA "too" ;
-- very_AdA = mkAdA "very" ;
-- want_VV = mkVV (regV "want") ;
-- whatPl_IP = mkIP "what" "what" "what's" plural ;
-- whatSg_IP = mkIP "what" "what" "what's" singular ;
-- when_IAdv = ss "when" ;
-- when_Subj = ss "when" ;
-- where_IAdv = ss "where" ;
-- whoPl_IP = mkIP "who" "whom" "whose" plural ;
-- whoSg_IP = mkIP "who" "whom" "whose" singular ;
-- why_IAdv = ss "why" ;
-- yes_Utt = ss "yes" ;
-- nobody_NP = regNP "nobody" singular ;
-- nothing_NP = regNP "nothing" singular ;
-- at_least_AdN = mkAdN "at least" ;
-- at_most_AdN = mkAdN "at most" ;
-- as_CAdv = C.mkCAdv "as" "as" ;
have_V2 = dirV2 (
irregularV form1 (ResMlt.mkRoot) (ResMlt.mkPattern)
"kelli" "kellek" "kellu" "kellha" "kellna" "kellkom" "kellhom"
"għandi" "għandek" "għandu" "għandha" "għandna" "għandkom" "għandhom"
"kollok" "kollkom"
) ;
please_Voc = ss "jekk jgħoġbok" ; --- JEKK JGĦOĠOBKOM
-- that_Subj = ss "that" ;
no_Utt = ss "le" ;
yes_Utt = ss "iva" ;
lin language_title_Utt = ss "Malti" ;
language_title_Utt = ss "Malti" ;
}