forked from GitHub/gf-core
Maltese RG: Irregular verbs in Dict, Lexicon. Prep, Conj and others.
This commit is contained in:
@@ -9,4 +9,13 @@ concrete AdverbMlt of Adverb = CatMlt ** open ResMlt, Prelude in {
|
||||
-- AdN
|
||||
-- Adv
|
||||
|
||||
lin
|
||||
-- Prep -> NP -> Adv
|
||||
PrepNP prep np = {
|
||||
s = case <np.isDefn,prep.takesDet> of {
|
||||
<True,True> => prep.s ! Definite ++ np.s ! CPrep ; -- FIT-TRIQ
|
||||
<True,False> => prep.s ! Definite ++ np.s ! Nom ; -- FUQ IT-TRIQ
|
||||
<False,_> => prep.s ! Indefinite ++ np.s ! Nom -- FI TRIQ
|
||||
}
|
||||
} ;
|
||||
}
|
||||
|
||||
@@ -14,14 +14,14 @@ concrete CatMlt of Cat = CommonX ** open ResMlt, Prelude in {
|
||||
|
||||
-- Tensed/Untensed
|
||||
|
||||
-- S = {s : Str} ;
|
||||
S = {s : Str} ;
|
||||
-- QS = {s : QForm => Str} ;
|
||||
-- RS = {s : Agr => Str ; c : NPCase} ; -- c for it clefts
|
||||
-- SSlash = {s : Str ; c2 : Str} ;
|
||||
|
||||
-- Sentence
|
||||
|
||||
Cl = {s : Tense => Anteriority => Polarity => Str} ;
|
||||
Cl = {s : ResMlt.Tense => Anteriority => Polarity => Str} ;
|
||||
-- ClSlash = {
|
||||
-- s : ResMlt.Tense => Anteriority => Polarity => Order => Str ;
|
||||
-- c2 : Str
|
||||
@@ -85,7 +85,7 @@ concrete CatMlt of Cat = CommonX ** open ResMlt, Prelude in {
|
||||
n : NumForm ;
|
||||
} ;
|
||||
|
||||
-- numeral
|
||||
-- Numeral
|
||||
|
||||
-- Cardinal or ordinal in WORDS (not digits)
|
||||
Numeral = {
|
||||
@@ -100,25 +100,24 @@ concrete CatMlt of Cat = CommonX ** open ResMlt, Prelude in {
|
||||
tail : DTail
|
||||
};
|
||||
|
||||
|
||||
-- Structural
|
||||
|
||||
-- Conj = {s1,s2 : Str ; n : Number} ;
|
||||
-- ---b Conj = {s : Str ; n : Number} ;
|
||||
-- ---b DConj = {s1,s2 : Str ; n : Number} ;
|
||||
Conj = {s1,s2 : Str} ;
|
||||
-- Subj = {s : Str} ;
|
||||
Prep = {s : Str} ;
|
||||
Prep = {
|
||||
s : Definiteness => Str ;
|
||||
takesDet : Bool
|
||||
} ;
|
||||
|
||||
-- Open lexical classes, e.g. Lexicon
|
||||
|
||||
V, VS, VQ, VA = Verb ;
|
||||
V2, V2A, V2Q, V2S = Verb ; -- ** {c2 : Str} ;
|
||||
V3 = Verb ; -- ** {c2, c3 : Str} ;
|
||||
V2, V2A, V2Q, V2S = Verb ** {prep : Prep} ;
|
||||
-- VV = {s : VVForm => Str ; typ : VVType} ;
|
||||
-- V2V = Verb ** {c2,c3 : Str ; typ : VVType} ;
|
||||
V3, V2V = Verb ** {prep1,prep2 : Prep} ; -- ** {typ : VVType} ;
|
||||
|
||||
A = Adjective ** {hasComp : Bool} ; -- Does the adjective have a comparative form (e.g. ISBAĦ)?
|
||||
-- A2 = Adjective ** {c2 : Str} ;
|
||||
A = Adjective ;
|
||||
A2 = Adjective ;
|
||||
|
||||
N, N2, N3 = Noun ;
|
||||
PN = ProperNoun ;
|
||||
|
||||
@@ -1,10 +1,15 @@
|
||||
--# -path=.:../prelude:../abstract:../common
|
||||
|
||||
-- Monolingual dictionary for Maltese
|
||||
-- The 4000 root-and-pattern verbs come from M. Spagnol's work, which is
|
||||
-- available here: http://mlrs.research.um.edu.mt/resources/verbalroots/
|
||||
|
||||
concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
|
||||
flags
|
||||
coding=utf8 ;
|
||||
|
||||
-- Root-and-pattern verbs
|
||||
lin
|
||||
badbad_BDBD_1_6674_V = mkV "badbad" (mkRoot "b-d-b-d") ;
|
||||
tbadbad_BDBD_2_6675_V = mkV_II "tbadbad" (mkRoot "b-d-b-d") ;
|
||||
@@ -339,8 +344,16 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
tkaghweg_KGHWG_2_7009_V = mkV_II "tkagħweġ" (mkRoot "k-għ-w-ġ") ;
|
||||
kolja_KLJJ_1_7010_V = mkV "kolja" (mkRoot "k-l-j-j") ;
|
||||
kampa_KMPJ_1_7011_V = mkV "kampa" (mkRoot "k-m-p-j") ;
|
||||
-- kompla_KMPLJ_1_7012_V = mkV "kompla" (mkRoot "k-m-pl-j") ;
|
||||
-- tkompla_KMPLJ_2_7013_V = mkV_II "tkompla" (mkRoot "k-m-pl-j") ;
|
||||
kompla_KMPLJ_1_7012_V = mkV quadWeak form1 (mkRoot "k-m-pl-j") (mkPattern "o" "a")
|
||||
"komplejt" "komplejt" "kompla" "kompliet" "komplejna" "komplejtu" "komplew"
|
||||
"nkompli" "tkompli" "jkompli" "tkompli" "nkomplu" "tkomplu" "jkomplu"
|
||||
"kompli" "komplu"
|
||||
;
|
||||
tkompla_KMPLJ_2_7013_V = mkV quadWeak form2 (mkRoot "k-m-pl-j") (mkPattern "o" "a")
|
||||
"tkomplejt" "tkomplejt" "tkompla" "tkompliet" "tkomplejna" "tkomplejtu" "tkomplew"
|
||||
"nitkompla" "titkompla" "jitkompla" "titkompla" "nitkomplu" "titkomplu" "jitkomplu"
|
||||
"tkompla" "tkomplu"
|
||||
;
|
||||
kamrad_KMRD_1_7014_V = mkV "kamrad" (mkRoot "k-m-r-d") ;
|
||||
kanga_KNGJ_1_7015_V = mkV "kanġa" (mkRoot "k-n-ġ-j") ;
|
||||
kanta_KNTJ_1_7016_V = mkV "kanta" (mkRoot "k-n-t-j") ;
|
||||
@@ -414,8 +427,16 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
mander_MNDR_1_7085_V = mkV "mander" (mkRoot "m-n-d-r") ;
|
||||
tmandar_MNDR_2_7086_V = mkV_II "tmandar" (mkRoot "m-n-d-r") ;
|
||||
menghel_MNGHL_1_7087_V = mkV "mengħel" (mkRoot "m-n-għ-l") ;
|
||||
-- mantna_MNTNJ_1_7088_V = mkV "mantna" (mkRoot "m-n-tn-j") ;
|
||||
-- tmantna_MNTNJ_2_7089_V = mkV_II "tmantna" (mkRoot "m-n-tn-j") ;
|
||||
mantna_MNTNJ_1_7088_V = mkV quadWeak form1 (mkRoot "m-n-tn-j") (mkPattern "a" "a")
|
||||
"mantnejt" "mantnejt" "mantna" "mantniet" "mantnejna" "mantnejtu" "mantnew"
|
||||
"nmantna" "tmantna" "jmantna" "tmantna" "nmantnu" "tmantnu" "jmantnu"
|
||||
"mantna" "mantnu"
|
||||
;
|
||||
tmantna_MNTNJ_2_7089_V = mkV quadWeak form2 (mkRoot "m-n-tn-j") (mkPattern "a" "a")
|
||||
"tmantnejt" "tmantnejt" "tmantna" "tmantniet" "tmantnejna" "tmantnejtu" "tmantnew"
|
||||
"nitmantna" "titmantna" "jitmantna" "titmantna" "nitmantnu" "titmantnu" "jitmantnu"
|
||||
"tmantna" "tmantnu"
|
||||
;
|
||||
mantar_MNTR_1_7090_V = mkV "mantar" (mkRoot "m-n-t-r") ;
|
||||
tmantar_MNTR_2_7091_V = mkV_II "tmantar" (mkRoot "m-n-t-r") ;
|
||||
manwal_MNWL_1_7092_V = mkV "manwal" (mkRoot "m-n-w-l") ;
|
||||
@@ -762,8 +783,16 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
balla'_BLGH_2_7436_V = mkV_II "balla'" (mkRoot "b-l-għ") ;
|
||||
tballa'_BLGH_5_7437_V = mkV_V "tballa'" (mkRoot "b-l-għ") ;
|
||||
nbela'_BLGH_7_7438_V = mkV_VII "bela'" "nbela'" (mkRoot "b-l-għ") ;
|
||||
-- belleh_BLHN_2_7439_V = mkV_II "belleh" (mkRoot "bl-ħ-n") ;
|
||||
-- tbelleh_BLHN_5_7440_V = mkV_V "tbelleh" (mkRoot "bl-ħ-n") ;
|
||||
blehhen_BLHN_1_7439_V = mkV strong form1 (mkRoot "bl-ħ-n") (mkPattern "e" "e")
|
||||
"bleħħint" "bleħħint" "bleħħen" "bleħħnet" "bleħħinna" "bleħħintu" "bleħħnu"
|
||||
"nbleħħen" "tbleħħen" "jibleħħen" "tbleħħen" "nbleħħnu" "tbleħħnu" "jibleħħnu"
|
||||
"bleħħen" "bleħħnu"
|
||||
;
|
||||
tblehhen_BLHN_2_7440_V = mkV strong form2 (mkRoot "bl-ħ-n") (mkPattern "e" "e")
|
||||
"tbleħħint" "tbleħħint" "tbleħħen" "tbleħħnet" "tbleħħinna" "tbleħħintu" "tbleħħnu"
|
||||
"nitbleħħen" "titbleħħen" "jitbleħħen" "titbleħħen" "nitbleħħnu" "titbleħħnu" "jitbleħħnu"
|
||||
"tbleħħen" "tbleħħnu"
|
||||
;
|
||||
bell_BLL_1_7441_V = mkV "bell" (mkRoot "b-l-l") ;
|
||||
bellel_BLL_2_7442_V = mkV_II "bellel" (mkRoot "b-l-l") ;
|
||||
tbell_BLL_5_7443_V = mkV_V "tbell" (mkRoot "b-l-l") ;
|
||||
@@ -816,7 +845,11 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
tberrek_BRK_5_7490_V = mkV_V "tberrek" (mkRoot "b-r-k") ;
|
||||
bierek_BRK_3_7491_V = mkV_III "bierek" (mkRoot "b-r-k") ;
|
||||
tbierek_BRK_6_7492_V = mkV_VI "tbierek" (mkRoot "b-r-k") ;
|
||||
-- tbrekken_BRKN_5_7493_V = mkV_V "tbrekken" (mkRoot "br-k-n") ;
|
||||
tbrekken_BRKN_5_7493_V = mkV strong form5 (mkRoot "br-k-n") (mkPattern "e" "e")
|
||||
"tbrekkint" "tbrekkint" "tbrekken" "tbrekknet" "tbrekkinna" "tbrekkintu" "tbrekknu"
|
||||
"nitbrekken" "titbrekken" "jitbrekken" "titbrekken" "nitbrekknu" "titbrekknu" "jitbrekknu"
|
||||
"tbrekken" "tbrekknu"
|
||||
;
|
||||
baram_BRM_1_7494_V = mkV "baram" (mkRoot "b-r-m") ;
|
||||
barram_BRM_2_7495_V = mkV_II "barram" (mkRoot "b-r-m") ;
|
||||
tbarram_BRM_5_7496_V = mkV_V "tbarram" (mkRoot "b-r-m") ;
|
||||
@@ -864,9 +897,9 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
bexxex_BXX_2_7538_V = mkV_II "bexxex" (mkRoot "b-x-x") ;
|
||||
tbexxex_BXX_5_7539_V = mkV_V "tbexxex" (mkRoot "b-x-x") ;
|
||||
nbexx_BXX_7_7540_V = mkV_VII "bexx" "nbexx" (mkRoot "b-x-x") ;
|
||||
baza'_BZGH_1_7541_V = mkV "baża'" (mkRoot "b-ż-għ") ;
|
||||
bazza'_BZGH_2_7542_V = mkV_II "bażża'" (mkRoot "b-ż-għ") ;
|
||||
tbazza'_BZGH_5_7543_V = mkV_V "tbażża'" (mkRoot "b-ż-għ") ;
|
||||
beza'_BZGH_1_7541_V = mkV "baża'" (mkRoot "b-ż-għ") ;
|
||||
bezza'_BZGH_2_7542_V = mkV_II "bażża'" (mkRoot "b-ż-għ") ;
|
||||
tbezza'_BZGH_5_7543_V = mkV_V "tbażża'" (mkRoot "b-ż-għ") ;
|
||||
bizel_BZL_1_7544_V = mkV "biżel" (mkRoot "b-ż-l") ;
|
||||
bizzel_BZL_2_7545_V = mkV_II "biżżel" (mkRoot "b-ż-l") ;
|
||||
tbizzel_BZL_5_7546_V = mkV_V "tbiżżel" (mkRoot "b-ż-l") ;
|
||||
@@ -1148,8 +1181,12 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
faggar_FGR_2_7822_V = mkV_II "faġġar" (mkRoot "f-ġ-r") ;
|
||||
nfagar_FGR_7_7823_V = mkV_VII "faġar" "nfaġar" (mkRoot "f-ġ-r") ;
|
||||
faghal_FGHL_1_7824_V = mkV "fagħal" (mkRoot "f-għ-l") ;
|
||||
nftehem_FHM_7_7825_V = mkV_VII "ftehem" "nftehem" (mkRoot "f-h-m") ;
|
||||
ftiehem_FHM_8_7826_V = mkV_VIII "ftiehem" (mkRoot "f-h-m") ;
|
||||
fehem_FHM_1_10830_V = mkV "fehem" (mkRoot "f-h-m") ;
|
||||
fehhem_FHM_2_10832_V = mkV_II "fehhem" (mkRoot "f-h-m") ;
|
||||
fiehem_FHM_3_10831_V = mkV_III "fiehem" (mkRoot "f-h-m") ;
|
||||
tfehem_FHM_6_10833_V = mkV_VI "tfehem" (mkRoot "f-h-m") ;
|
||||
nfehem_FHM_7_7825_V = mkV_VII "fehem" "nfehem" (mkRoot "f-h-m") ;
|
||||
ftehem_FHM_8_7826_V = mkV_VIII "ftehem" (mkRoot "f-h-m") ;
|
||||
fahal_FHL_1_7827_V = mkV "faħal" (mkRoot "f-ħ-l") ;
|
||||
fahhal_FHL_2_7828_V = mkV_II "faħħal" (mkRoot "f-ħ-l") ;
|
||||
tfahhal_FHL_5_7829_V = mkV_V "tfaħħal" (mkRoot "f-ħ-l") ;
|
||||
@@ -1446,7 +1483,11 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
gezz_GZZ_1_8120_V = mkV "ġeżż" (mkRoot "ġ-ż-ż") ;
|
||||
gezzez_GZZ_2_8121_V = mkV_II "ġeżżeż" (mkRoot "ġ-ż-ż") ;
|
||||
ngezz_GZZ_7_8122_V = mkV_VII "ġeżż" "nġeżż" (mkRoot "ġ-ż-ż") ;
|
||||
-- gie_GJ'_1_8123_V = mkV "ġie" (mkRoot "ġ-j-'") ;
|
||||
gie_GJ'_1_8123_V = irregularV form1 (mkRoot "ġ-j-'") (mkPattern "ie" [])
|
||||
"ġejt" "ġejt" "ġie" "ġiet" "ġejna" "ġejtu" "ġew"
|
||||
"niġi" "tiġi" "jiġi" "tiġi" "niġu" "tiġu" "jiġu"
|
||||
"ejja" "ejjew"
|
||||
;
|
||||
gab_GJB_1_8124_V = mkV "ġab" (mkRoot "ġ-j-b") ;
|
||||
ngab_GJB_7_8125_V = mkV_VII "ġab" "nġab" (mkRoot "ġ-j-b") ;
|
||||
gejjef_GJF_2_8126_V = mkV_II "ġejjef" (mkRoot "ġ-j-f") ;
|
||||
@@ -1993,7 +2034,11 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
tkejjef_KJF_5_8669_V = mkV_V "tkejjef" (mkRoot "k-j-f") ;
|
||||
kejjel_KJL_2_8670_V = mkV_II "kejjel" (mkRoot "k-j-l") ;
|
||||
tkejjel_KJL_5_8671_V = mkV_V "tkejjel" (mkRoot "k-j-l") ;
|
||||
kiel_KJL_1_8672_V = mkV "kiel" (mkRoot "k-j-l") ;
|
||||
kiel_KJL_1_8672_V = irregularV form1 (mkRoot "k-j-l") (mkPattern "ie" [])
|
||||
"kilt" "kilt" "kiel" "kielet" "kilna" "kiltu" "kielu"
|
||||
"niekol" "tiekol" "jiekol" "tiekol" "nieklu" "tieklu" "jieklu"
|
||||
("kul"|"iekol") ("kulu"|"ieklu")
|
||||
;
|
||||
wikkel_KJL_2_8673_V = mkV_II "wikkel" (mkRoot "k-j-l") ;
|
||||
twikkel_KJL_5_8674_V = mkV_V "twikkel" (mkRoot "k-j-l") ;
|
||||
ttiekel_KJL_7_8675_V = mkV_VII "tiekel" "ttiekel" (mkRoot "k-j-l") ;
|
||||
@@ -2016,7 +2061,11 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
kewa_KWJ_1_8692_V = mkV "kewa" (mkRoot "k-w-j") ;
|
||||
tkiewa_KWJ_6_8693_V = mkV_VI "tkiewa" (mkRoot "k-w-j") ;
|
||||
nkewa_KWJ_7_8694_V = mkV_VII "kewa" "nkewa" (mkRoot "k-w-j") ;
|
||||
kien_KWN_1_8695_V = mkV "kien" (mkRoot "k-w-n") ;
|
||||
kien_KWN_1_8695_V = irregularV form1 (mkRoot "k-w-n") (mkPattern "ie" [])
|
||||
"kont" "kont" "kien" "kienet" "konna" "kontu" "kienu"
|
||||
"nkun" "tkun" "jkun" "tkun" "nkunu" "tkunu" "jkunu"
|
||||
"kun" "kunu"
|
||||
;
|
||||
kewwen_KWN_2_8696_V = mkV_II "kewwen" (mkRoot "k-w-n") ;
|
||||
tkewwen_KWN_5_8697_V = mkV_V "tkewwen" (mkRoot "k-w-n") ;
|
||||
kewwes_KWS_2_8698_V = mkV_II "kewwes" (mkRoot "k-w-s") ;
|
||||
@@ -2239,7 +2288,11 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
tmiera_MRJ_6_8915_V = mkV_VI "tmiera" (mkRoot "m-r-j") ;
|
||||
mewweg_MWG_2_8916_V = mkV_II "mewweġ" (mkRoot "m-w-ġ") ;
|
||||
tmewweg_MWG_5_8917_V = mkV_V "tmewweġ" (mkRoot "m-w-ġ") ;
|
||||
mar_MWR_1_8918_V = mkV "mar" (mkRoot "m-w-r") ;
|
||||
mar_MWR_1_8918_V = irregularV form1 (mkRoot "m-w-r") (mkPattern "a" [])
|
||||
"mort" "mort" "mar" "marret" "morna" "mortu" "marru"
|
||||
"mmur" "tmur" "jmur" "tmur" "mmorru" "tmorru" "jmorru"
|
||||
"mur" "morru"
|
||||
;
|
||||
mawwar_MWR_2_8919_V = mkV_II "mawwar" (mkRoot "m-w-r") ;
|
||||
tmawwar_MWR_5_8920_V = mkV_V "tmawwar" (mkRoot "m-w-r") ;
|
||||
mewwes_MWS_2_8921_V = mkV_II "mewwes" (mkRoot "m-w-s") ;
|
||||
@@ -2652,7 +2705,7 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
nqeda_QDJ_7_9330_V = mkV_VII "qeda" "nqeda" (mkRoot "q-d-j") ;
|
||||
qajjed_QJD_2_9331_V = mkV_II "qajjed" (mkRoot "q-j-d") ;
|
||||
tqajjed_QJD_5_9332_V = mkV_V "tqajjed" (mkRoot "q-j-d") ;
|
||||
qal_QJL_1_9333_V = mkV "qal" (mkRoot "q-j-l") ;
|
||||
qal_QJL_1_9333_V = mkV "qal" (mkRoot "q-j-l") ; -- shelter (see QAJJEL)
|
||||
qajjel_QJL_2_9334_V = mkV_II "qajjel" (mkRoot "q-j-l") ;
|
||||
qiem_QJM_1_9335_V = mkV "qiem" (mkRoot "q-j-m") ;
|
||||
qejjem_QJM_2_9336_V = mkV_II "qejjem" (mkRoot "q-j-m") ;
|
||||
@@ -2676,7 +2729,11 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
nqara_QRJ_7_9354_V = mkV_VII "qara" "nqara" (mkRoot "q-r-j") ;
|
||||
qawwa_QWJ_2_9355_V = mkV_II "qawwa" (mkRoot "q-w-j") ;
|
||||
tqawwa_QWJ_5_9356_V = mkV_V "tqawwa" (mkRoot "q-w-j") ;
|
||||
qal_QWL_1_9357_V = mkV "qal" (mkRoot "q-w-l") ;
|
||||
qal_QWL_1_9357_V = irregularV form1 (mkRoot "q-w-l") (mkPattern "a" [])
|
||||
"għedt" "għedt" "qal" "qalet" "għedna" "għedtu" "qalu"
|
||||
"ngħid" "tgħid" "jgħid" "tgħid" "ngħidu" "tgħidu" "jgħidu"
|
||||
"għid" "għidu"
|
||||
; -- say/speak (note: GĦAD is also a separate verb)
|
||||
qawwel_QWL_2_9358_V = mkV_II "qawwel" (mkRoot "q-w-l") ;
|
||||
tqawel_QWL_6_9359_V = mkV_VI "tqawel" (mkRoot "q-w-l") ;
|
||||
nqal_QWL_7_9360_V = mkV_VII "qal" "nqal" (mkRoot "q-w-l") ;
|
||||
@@ -2832,8 +2889,16 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
razan_RZN_1_9510_V = mkV "rażan" (mkRoot "r-ż-n") ;
|
||||
razzan_RZN_2_9511_V = mkV_II "rażżan" (mkRoot "r-ż-n") ;
|
||||
trazzan_RZN_5_9512_V = mkV_V "trażżan" (mkRoot "r-ż-n") ;
|
||||
-- ra_R'J_1_9513_V = mkV "ra" (mkRoot "r-'-j") ;
|
||||
-- ntwera_R'J_7_9514_V = mkV_VII "wera" "ntwera" (mkRoot "r-'-j") ;
|
||||
ra_R'J_1_9513_V = irregularV form1 (mkRoot "r-'-j") (mkPattern "a" [])
|
||||
"rajt" "rajt" "ra" "rat" "rajna" "rajtu" "raw"
|
||||
"nara" "tara" "jara" "tara" "naraw" "taraw" "jaraw"
|
||||
"ara" "araw"
|
||||
;
|
||||
ntwera_R'J_7_9514_V = irregularV form7 (mkRoot "r-'-j") (mkPattern "e" "e")
|
||||
"ntwerejt" "ntwerejt" "ntwera" "ntweriet" "ntwerejna" "ntwerejtu" "ntwerew"
|
||||
"nintwera" "tintwera" "jintwera" "tintwera" "nintwerew" "tintwerew" "jintwerew"
|
||||
"ntwera" "ntwerew"
|
||||
;
|
||||
rabba_RBJ_2_9515_V = mkV_II "rabba" (mkRoot "r-b-j") ;
|
||||
trabba_RBJ_5_9516_V = mkV_V "trabba" (mkRoot "r-b-j") ;
|
||||
riega_RGJ_3_9517_V = mkV_III "rieġa" (mkRoot "r-ġ-j") ;
|
||||
@@ -3227,9 +3292,21 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
ntelaq_TLQ_7_9906_V = mkV_VII "telaq" "ntelaq" (mkRoot "t-l-q") ;
|
||||
tellet_TLT_2_9907_V = mkV_II "tellet" (mkRoot "t-l-t") ;
|
||||
ttellet_TLT_5_9908_V = mkV_V "ttellet" (mkRoot "t-l-t") ;
|
||||
-- tamma_TM'_2_9909_V = mkV_II "tamma" (mkRoot "t-m-'") ;
|
||||
-- tama_TM'_3_9910_V = mkV_III "tama" (mkRoot "t-m-'") ;
|
||||
-- ttama_TM'_6_9911_V = mkV_VI "ttama" (mkRoot "t-m-'") ;
|
||||
tamma_TM'_2_9909_V = mkV irregular form2 (mkRoot "t-m-'") (mkPattern "a" "a")
|
||||
"tammajt" "tammajt" "tamma" "tammat" "tammajna" "tammajtu" "tammaw"
|
||||
"nitamma" "titamma" "jitamma" "titamma" "nitammaw" "titammaw" "jitammaw"
|
||||
"tamma" "tammaw"
|
||||
;
|
||||
tama_TM'_3_9910_V = mkV irregular form3 (mkRoot "t-m-'") (mkPattern "a" "a")
|
||||
"tamajt" "tamajt" "tama" "tamat" "tamajna" "tamajtu" "tamaw"
|
||||
"nitama" "titama" "jitama" "titama" "nitamaw" "titamaw" "jitamaw"
|
||||
"tama" "tamaw"
|
||||
;
|
||||
ttama_TM'_6_9911_V = mkV irregular form6 (mkRoot "t-m-'") (mkPattern "a" "a")
|
||||
"ttamajt" "ttamajt" "ttama" "ttamat" "ttamajna" "ttamajtu" "ttamaw"
|
||||
"nittama" "tittama" "jittama" "tittama" "nittamaw" "tittamaw" "jittamaw"
|
||||
"ttama" "ttamaw"
|
||||
;
|
||||
tama'_TMGH_1_9912_V = mkV "tama'" (mkRoot "t-m-għ") ;
|
||||
tamma'_TMGH_2_9913_V = mkV_II "tamma'" (mkRoot "t-m-għ") ;
|
||||
ttamma'_TMGH_5_9914_V = mkV_V "ttamma'" (mkRoot "t-m-għ") ;
|
||||
@@ -3380,7 +3457,11 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
wieled_WLD_3_10059_V = mkV_III "wieled" (mkRoot "w-l-d") ;
|
||||
twelled_WLD_5_10060_V = mkV_V "twelled" (mkRoot "w-l-d") ;
|
||||
twieled_WLD_6_10061_V = mkV_VI "twieled" (mkRoot "w-l-d") ;
|
||||
emmen_WMN_1_10062_V = mkV "emmen" (mkRoot "w-m-n") ;
|
||||
emmen_WMN_1_10062_V = irregularV form1 (mkRoot "w-m-n") (mkPattern "e" "e")
|
||||
"emmint" "emmint" "emmen" "emmnet" "emminna" "emmintu" "emmnu"
|
||||
"nemmen" "temmen" "jemmen" "temmen" "nemmnu" "temmnu" "jemmnu"
|
||||
"emmen" "emmnu"
|
||||
;
|
||||
wemmen_WMN_2_10063_V = mkV_II "wemmen" (mkRoot "w-m-n") ;
|
||||
twemmen_WMN_5_10064_V = mkV_V "twemmen" (mkRoot "w-m-n") ;
|
||||
wennes_WNS_2_10065_V = mkV_II "wennes" (mkRoot "w-n-s") ;
|
||||
@@ -4085,22 +4166,82 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
tghazza_GHZW_5_10764_V = mkV_V "tgħażża" (mkRoot "għ-ż-w") ;
|
||||
hassel_HSL_2_10765_V = mkV_II "ħassel" (mkRoot "ħ-s-l") ;
|
||||
thassel_HSL_5_10766_V = mkV_V "tħassel" (mkRoot "ħ-s-l") ;
|
||||
ta_GHTJ_1_10767_V = mkV "ta" (mkRoot "għ-t-j") ;
|
||||
ta_GHTJ_1_10767_V = irregularV form1 (mkRoot "għ-t-j") (mkPattern "a" [])
|
||||
"tajt" "tajt" "ta" "tat" "tajna" "tajtu" "taw"
|
||||
"nagħti" "tagħti" "jagħti" "tagħti" "nagħtu" "tagħtu" "jagħtu"
|
||||
"agħti" "agħtu"
|
||||
;
|
||||
nghata_GHTJ_7_10768_V = mkV_VII "għata" "ngħata" (mkRoot "għ-t-j") ;
|
||||
-- idda_'DJ_8_10771_V = mkV_VIII "idda" (mkRoot "'-d-j") ;
|
||||
-- idden_'DN_2_10772_V = mkV_II "idden" (mkRoot "'-d-n") ;
|
||||
-- stieden_'DN_10_10773_V = mkV_X "stieden" (mkRoot "'-d-n") ;
|
||||
-- af_''F_1_10774_V = mkV "af" (mkRoot "'-'-f") ;
|
||||
-- ntaf_''F_7_10775_V = mkV_VII "af" "ntaf" (mkRoot "'-'-f") ;
|
||||
-- ha_'HD_1_10776_V = mkV "ħa" (mkRoot "'-ħ-d") ;
|
||||
-- ttiehed_'HD_6_10777_V = mkV_VI "ttieħed" (mkRoot "'-ħ-d") ;
|
||||
-- staha_'HJ_10_10778_V = mkV_X "staħa" (mkRoot "'-ħ-j") ;
|
||||
-- amar_'MR_1_10779_V = mkV "amar" (mkRoot "'-m-r") ;
|
||||
-- amba_'MB_1_10780_V = mkV "amba" (mkRoot "'-m-b") ;
|
||||
-- stenna_'NJ_10_10781_V = mkV_X "stenna" (mkRoot "'-n-j") ;
|
||||
-- stienes_'NS_10_10782_V = mkV_X "stienes" (mkRoot "'-n-s") ;
|
||||
-- izza_'ZJ_2_10783_V = mkV_II "iżża" (mkRoot "'-ż-j") ;
|
||||
-- azzem_'ZM_2_10784_V = mkV_II "ażżem" (mkRoot "'-ż-m") ;
|
||||
idda_'DJ_8_10771_V = irregularV form8 (mkRoot "'-d-j") (mkPattern "i" "e")
|
||||
"iddejt" "iddejt" "idda" "iddiet" "iddejna" "iddejtu" "iddew"
|
||||
"niddi" "tiddi" "jiddi" "tiddi" "niddu" "tiddu" "jiddu"
|
||||
"iddi" "iddu"
|
||||
;
|
||||
idden_'DN_2_10772_V = irregularV form2 (mkRoot "'-d-n") (mkPattern "i" "e")
|
||||
"iddint" "iddint" "idden" "iddnet" "iddinna" "iddinntu" "iddnu"
|
||||
"nidden" "tidden" "jidden" "tidden" "niddnu" "tiddnu" "jiddnu"
|
||||
"idden" "iddnu"
|
||||
;
|
||||
stieden_'DN_10_10773_V = irregularV form10 (mkRoot "'-d-n") (mkPattern "ie" "e")
|
||||
"stedint" "stedint" "stieden" "stiednet" "stedinna" "stedintu" "stiednu"
|
||||
"nistieden" "tistieden" "jistieden" "tistieden" "nistiednu" "tistiednu" "jistiednu"
|
||||
"stieden" "stiednu"
|
||||
;
|
||||
af_''F_1_10774_V = irregularV form1 (mkRoot "'-'-f") (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"
|
||||
;
|
||||
ntaf_''F_7_10775_V = irregularV form2 (mkRoot "'-'-f") (mkPattern "a" [])
|
||||
"ntafejt" "ntafejt" "ntaf" "ntafet" "ntafna" "ntaftu" "ntafu"
|
||||
"nintaf" "tintaf" "jintaf" "tintaf" "nintafu" "tintafu" "jintafu"
|
||||
"ntaf" "ntafu"
|
||||
;
|
||||
ha_'HD_1_10776_V = irregularV form1 (mkRoot "'-ħ-d") (mkPattern "a" [])
|
||||
"ħadt" "ħadt" "ħa" "ħadet" "ħadna" "ħadtu" "ħadu"
|
||||
"nieħu" "tieħu" "jieħu" "tieħu" "nieħdu" "tieħdu" "jieħdu"
|
||||
"ħu" "ħudu"
|
||||
;
|
||||
ttiehed_'HD_6_10777_V = irregularV form6 (mkRoot "'-ħ-d") (mkPattern "ie" "e")
|
||||
"ttieħedt" "ttieħedt" "ttieħed" "ttieħdet" "ttieħedna" "ttieħedtu" "ttieħdu"
|
||||
"nittieħed" "tittieħed" "jittieħed" "tittieħed" "nittieħdu" "tittieħdu" "jittieħdu"
|
||||
"ttieħed" "ttieħdu"
|
||||
;
|
||||
staha_'HJ_10_10778_V = irregularV form10 (mkRoot "'-ħ-j") (mkPattern "a" "a")
|
||||
"stħajt" "stħajt" "staħa" "stħiet" "stħajna" "stħajtu" "stħew"
|
||||
"nistħi" "tistħi" "jistħi" "tistħi" "nistħu" "tistħu" "jistħu"
|
||||
"istħi" "istħu"
|
||||
;
|
||||
amar_'MR_1_10779_V = irregularV form1 (mkRoot "'-m-r") (mkPattern "a" "a") -- order, command
|
||||
"amart" "amart" "amar" "amret" "amarna" "amartu" "amraw"
|
||||
"namar" "tamar" "jamar" "tamar" "namraw" "tamraw" "jamraw"
|
||||
"amar" "amraw"
|
||||
;
|
||||
amba_'MB_1_10780_V = irregularV form1 (mkRoot "'-m-b") (mkPattern "a" "a")
|
||||
"ambajt" "ambajt" "amba" "ambat" "ambajna" "ambajtu" "ambaw"
|
||||
"namba" "tamba" "jamba" "tamba" "nambaw" "tambaw" "jambaw"
|
||||
"amba" "ambaw"
|
||||
;
|
||||
stenna_'NJ_10_10781_V = irregularV form10 (mkRoot "'-n-j") (mkPattern "e" "a")
|
||||
"stennejt" "stennejt" "stenna" "stenniet" "stennejna" "stennejtu" "stennew"
|
||||
"nistenna" "tistenna" "jistenna" "tistenna" "nistennew" "tistennew" "jistennew"
|
||||
"stenna" "stennew"
|
||||
;
|
||||
stienes_'NS_10_10782_V = mkV irregular form10 (mkRoot "'-n-s") (mkPattern "ie" "e")
|
||||
"stienist" "stienist" "stienes" "stienset" "stienisna" "stienistu" "stiensu"
|
||||
"nistienes" "tistienes" "jistienes" "tistienes" "nistiensu" "tistiensu" "jistiensu"
|
||||
"stienes" "stiensu"
|
||||
;
|
||||
izza_'ZJ_2_10783_V = irregularV form2 (mkRoot "'-ż-j") (mkPattern "i" "a")
|
||||
"iżżajt" "iżżajt" "iżża" "iżżat" "iżżajna" "iżżajtu" "iżżaw"
|
||||
"niżżi" "tiżżi" "jiżżi" "tiżżi" "niżżu" "tiżżu" "jiżżu"
|
||||
"iżżi" "iżżu"
|
||||
;
|
||||
azzem_'ZM_2_10784_V = irregularV form2 (mkRoot "'-ż-m") (mkPattern "a" "e")
|
||||
"ażżimt" "ażżimt" "ażżem" "ażżmet" "ażżimna" "ażżimtu" "ażżmu"
|
||||
"nażżem" "tażżem" "jażżem" "tażżem" "nażżmu" "tażżmu" "jażżmu"
|
||||
"ażżem" "ażżmu"
|
||||
;
|
||||
zanqar_ZNQR_1_10785_V = mkV "żanqar" (mkRoot "ż-n-q-r") ;
|
||||
zanzan_ZNZN_1_10786_V = mkV "żanżan" (mkRoot "ż-n-ż-n") ;
|
||||
zzanzan_ZNZN_2_10787_V = mkV_II "żżanżan" (mkRoot "ż-n-ż-n") ;
|
||||
@@ -4131,8 +4272,16 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
pexxex_PXX_2_10812_V = mkV_II "pexxex" (mkRoot "p-x-x") ;
|
||||
penpen_PNPN_1_10813_V = mkV "penpen" (mkRoot "p-n-p-n") ;
|
||||
hezzez_HZZ_2_10814_V = mkV_II "heżżeż" (mkRoot "h-ż-ż") ;
|
||||
-- wera_R'J_1_10815_V = mkV "wera" (mkRoot "r-'-j") ;
|
||||
-- ntara_R'J_7_10816_V = mkV_VII "ara" "ntara" (mkRoot "r-'-j") ;
|
||||
wera_R'J_1_10815_V = irregularV form4 (mkRoot "r-'-j") (mkPattern "e" "a")
|
||||
"urejt" "urejt" "wera" "uriet" "urejna" "urejtu" "urejna"
|
||||
"nuri" "turi" "juri" "turi" "nuru" "turu" "juru"
|
||||
"uri" "uru"
|
||||
;
|
||||
ntara_R'J_7_10816_V = irregularV form7 (mkRoot "r-'-j") (mkPattern "a" "a")
|
||||
"ntrajt" "ttarajt" "ntara" "ttarat" "ntrajna" "ntrajtu" "ntraw"
|
||||
"nintara" "tintara" "jintara" "tintara" "nintaraw" "tintaraw" "jintaraw"
|
||||
"ntara" "ntaraw"
|
||||
;
|
||||
qass_QSS_1_10817_V = mkV "qass" (mkRoot "q-s-s") ;
|
||||
ntqass_QSS_7_10818_V = mkV_VII "qass" "ntqass" (mkRoot "q-s-s") ;
|
||||
tgharref_GHRF_5_10819_V = mkV_V "tgħarref" (mkRoot "għ-r-f") ;
|
||||
@@ -4144,4 +4293,12 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
itteka_TKW_1_10825_V = mkV "itteka" (mkRoot "t-k-w") ;
|
||||
ntemm_TMM_7_10826_V = mkV_VII "temm" "ntemm" (mkRoot "t-m-m") ;
|
||||
nghadda_GHDJ_7_10828_V = mkV_VII "għadda" "ngħadda" (mkRoot "għ-d-j") ;
|
||||
|
||||
-- Loan verbs
|
||||
lin
|
||||
mbotta_V = mkV "mbotta" ;
|
||||
vvjagga_V = mkV "vvjaġġa" ;
|
||||
ffriza_V = mkV "ffriża" ;
|
||||
kkuntempla_V = mkV "kkuntempla" ;
|
||||
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
abstract DictMltAbs = Cat ** {
|
||||
|
||||
-- Root-and-pattern verbs
|
||||
fun
|
||||
badbad_BDBD_1_6674_V : V ;
|
||||
tbadbad_BDBD_2_6675_V : V ;
|
||||
@@ -759,8 +760,8 @@ abstract DictMltAbs = Cat ** {
|
||||
balla'_BLGH_2_7436_V : V ;
|
||||
tballa'_BLGH_5_7437_V : V ;
|
||||
nbela'_BLGH_7_7438_V : V ;
|
||||
belleh_BLHN_2_7439_V : V ;
|
||||
tbelleh_BLHN_5_7440_V : V ;
|
||||
blehhen_BLHN_1_7439_V : V ;
|
||||
tblehhen_BLHN_2_7440_V : V ;
|
||||
bell_BLL_1_7441_V : V ;
|
||||
bellel_BLL_2_7442_V : V ;
|
||||
tbell_BLL_5_7443_V : V ;
|
||||
@@ -861,9 +862,9 @@ abstract DictMltAbs = Cat ** {
|
||||
bexxex_BXX_2_7538_V : V ;
|
||||
tbexxex_BXX_5_7539_V : V ;
|
||||
nbexx_BXX_7_7540_V : V ;
|
||||
baza'_BZGH_1_7541_V : V ;
|
||||
bazza'_BZGH_2_7542_V : V ;
|
||||
tbazza'_BZGH_5_7543_V : V ;
|
||||
beza'_BZGH_1_7541_V : V ;
|
||||
bezza'_BZGH_2_7542_V : V ;
|
||||
tbezza'_BZGH_5_7543_V : V ;
|
||||
bizel_BZL_1_7544_V : V ;
|
||||
bizzel_BZL_2_7545_V : V ;
|
||||
tbizzel_BZL_5_7546_V : V ;
|
||||
@@ -1145,8 +1146,12 @@ abstract DictMltAbs = Cat ** {
|
||||
faggar_FGR_2_7822_V : V ;
|
||||
nfagar_FGR_7_7823_V : V ;
|
||||
faghal_FGHL_1_7824_V : V ;
|
||||
nftehem_FHM_7_7825_V : V ;
|
||||
ftiehem_FHM_8_7826_V : V ;
|
||||
fehem_FHM_1_10830_V : V ;
|
||||
fehhem_FHM_2_10832_V : V ;
|
||||
fiehem_FHM_3_10831_V : V ;
|
||||
tfehem_FHM_6_10833_V : V ;
|
||||
nfehem_FHM_7_7825_V : V ;
|
||||
ftehem_FHM_8_7826_V : V ;
|
||||
fahal_FHL_1_7827_V : V ;
|
||||
fahhal_FHL_2_7828_V : V ;
|
||||
tfahhal_FHL_5_7829_V : V ;
|
||||
@@ -4141,4 +4146,11 @@ abstract DictMltAbs = Cat ** {
|
||||
itteka_TKW_1_10825_V : V ;
|
||||
ntemm_TMM_7_10826_V : V ;
|
||||
nghadda_GHDJ_7_10828_V : V ;
|
||||
|
||||
-- Loan verbs
|
||||
fun
|
||||
mbotta_V : V ;
|
||||
vvjagga_V : V ;
|
||||
ffriza_V : V ;
|
||||
kkuntempla_V : V ;
|
||||
}
|
||||
|
||||
@@ -7,39 +7,41 @@
|
||||
--# -path=.:../abstract:../common:../prelude
|
||||
|
||||
concrete LexiconMlt of Lexicon = CatMlt **
|
||||
open Prelude, ParadigmsMlt, IrregMlt in {
|
||||
open Prelude, ParadigmsMlt, IrregMlt, DictMlt in {
|
||||
|
||||
flags
|
||||
optimize=values ;
|
||||
coding=utf8 ;
|
||||
|
||||
lin
|
||||
-- add_V3
|
||||
-- alas_Interj
|
||||
-- already_Adv
|
||||
add_V3 = mkV3 zied_ZJD_1_10424_V maP ;
|
||||
airplane_N = mkN "ajruplan" ;
|
||||
alas_Interj = ss "sfortunatament" ;
|
||||
already_Adv = mkAdv "diġà" ;
|
||||
animal_N = mkN "annimal" ;
|
||||
answer_V2S = mkV_III "wieġeb" (mkRoot "w-ġ-b") ;
|
||||
answer_V2S = lilV2 (wiegeb_WGB_3_10033_V) ;
|
||||
apartment_N = mkN "appartament" ;
|
||||
apple_N = mkNColl "tuffieħ" ;
|
||||
art_N = mkNNoPlural "arti" feminine ;
|
||||
-- ashes_N = mkN "rmied" ;
|
||||
ask_V2Q = mkV "saqsa" (mkRoot "s-q-s-j") ;
|
||||
ashes_N = mkN "rmied" "rmiet" ;
|
||||
ask_V2Q = lilV2 (saqsa_SQSJ_1_7268_V) ;
|
||||
baby_N = mkN "tarbija" "trabi" ;
|
||||
back_N = possN (mkN "dahar" "dhur") ;
|
||||
bad_A = brokenA "ħażin" "hżiena" "agħar" ;
|
||||
bank_N = mkN "bank" "bankijiet" ; -- BANEK is for lotto booths!
|
||||
bark_N = mkN "qoxra" "qoxriet" ;
|
||||
beautiful_A = brokenA "sabiħ" "sbieħ" "isbaħ" ;
|
||||
-- become_VA
|
||||
become_VA = sar_SJR_1_9797_V ;
|
||||
beer_N = mkN "birra" "birer" ;
|
||||
-- beg_V2V
|
||||
beg_V2V = mkV2V ttallab_TLB_5_9893_V ghalP minnP ;
|
||||
belly_N = possN (mkN "żaqq" "żquq") ;
|
||||
big_A = brokenA "kbir" "kbar" "ikbar" ;
|
||||
bike_N = mkN "rota" ;
|
||||
bird_N = mkN "għasfur" "għasafar" ; -- feminine: GĦASFURA
|
||||
bite_V2 = mkV "gidem" (mkRoot "g-d-m") ;
|
||||
bite_V2 = lilV2 (gidem_GDM_1_8009_V) ;
|
||||
black_A = mkA "iswed" "sewda" "suwed" ;
|
||||
blood_N = possN (mkN [] "demm" [] "dmija" []) ;
|
||||
blow_V = mkV "nefaħ" (mkRoot "n-f-ħ") ;
|
||||
blow_V = nefah_NFH_1_8966_V ;
|
||||
blue_A = sameA "blu" ;
|
||||
boat_N = mkN "dgħajsa" "dgħajjes" ;
|
||||
bone_N = mkNColl "għadam" ;
|
||||
@@ -48,15 +50,15 @@ concrete LexiconMlt of Lexicon = CatMlt **
|
||||
boss_N = mkN "mgħallem" "mgħallmin" ;
|
||||
boy_N = mkN "tifel" "tfal" ;
|
||||
bread_N = mkNColl "ħobż" ;
|
||||
break_V2 = mkV "kiser" (mkRoot "k-s-r") ;
|
||||
break_V2 = dirV2 (kiser_KSR_1_8636_V) ;
|
||||
breast_N = possN (mkN "sider" "sdur") ; -- also ISDRA
|
||||
-- breathe_V
|
||||
-- breathe_V -- ĦA N-NIFS
|
||||
broad_A = mkA "wiesgħa" "wiesgħa" "wiesgħin" ;
|
||||
brother_N2 = mkN2 (possN (mkN "ħu" "aħwa")) ;
|
||||
brown_A = sameA "kannella" ;
|
||||
burn_V = mkV "ħaraq" (mkRoot "ħ-r-q") ;
|
||||
burn_V = haraq_HRQ_1_8367_V ;
|
||||
butter_N = mkN [] "butir" [] "butirijiet" [] ;
|
||||
buy_V2 = mkV_VIII "xtara" (mkRoot "x-r-j") ;
|
||||
buy_V2 = dirV2 (xtara_XRJ_8_10296_V) ;
|
||||
camera_N = mkN "kamera" "kameras" ;
|
||||
cap_N = mkN "beritta" ;
|
||||
car_N = mkN "karozza" ;
|
||||
@@ -65,76 +67,77 @@ concrete LexiconMlt of Lexicon = CatMlt **
|
||||
ceiling_N = mkN "saqaf" "soqfa";
|
||||
chair_N = mkN "siġġu" "siġġijiet" ;
|
||||
cheese_N = mkNColl "ġobon" ;
|
||||
-- child_N = mkN "tfajjel" ; -- Not an easy one...
|
||||
child_N = mkN "tifel" "tfal" ; -- feminine: TIFLA
|
||||
church_N = mkN "knisja" "knejjes" ;
|
||||
city_N = mkN "belt" "bliet" feminine ;
|
||||
clean_A = brokenA "nadif" "nodfa" ;
|
||||
clever_A = regA "bravu" ;
|
||||
close_V2 = mkV "għalaq" (mkRoot "għ-l-q") ;
|
||||
close_V2 = dirV2 (ghalaq_GHLQ_1_10530_V) ;
|
||||
cloud_N = mkNColl "sħab" ;
|
||||
coat_N = mkN "kowt" "kowtijiet" ;
|
||||
cold_A = mkA "kiesaħ" "kiesħa" "kesħin" ;
|
||||
-- come_V
|
||||
come_V = gie_GJ'_1_8123_V ;
|
||||
computer_N = mkN "kompjuter" "kompjuters" ;
|
||||
correct_A = regA "korrett" ;
|
||||
count_V2 = mkV "għadd" (mkRoot "għ-d-d") ;
|
||||
count_V2 = dirV2 (ghadd_GHDD_1_10460_V) ;
|
||||
country_N = possN (mkN "pajjiż") ;
|
||||
cousin_N = possN (mkN "kuġin") ; -- feminine: KUĠINA
|
||||
cow_N = mkN "baqra" "baqar" "baqartejn" [] [] ;
|
||||
cut_V2 = mkV "qata'" (mkRoot "q-t-għ") ;
|
||||
cut_V2 = dirV2 (qata'_QTGH_1_9305_V) ;
|
||||
day_N = mkN "ġurnata" "ġranet" ;
|
||||
dig_V = mkV "ħafer" (mkRoot "ħ-f-r") ;
|
||||
die_V = miet_MWT_1_8923_V ;
|
||||
dig_V = hafer_HFR_1_8233_V ;
|
||||
dirty_A = regA "maħmuġ" ;
|
||||
distance_N3 = mkN "distanza" ;
|
||||
do_V2 = mkV "għamel" (mkRoot "għ-m-l") ;
|
||||
do_V2 = dirV2 (ghamel_GHML_1_10544_V) ;
|
||||
doctor_N = mkN "tabib" "tobba" ; -- feminine: TABIBA
|
||||
dog_N = mkN "kelb" "klieb" ;
|
||||
door_N = mkN "bieb" "bibien" ;
|
||||
drink_V2 = mkV "xorob" (mkRoot "x-r-b") ;
|
||||
drink_V2 = dirV2 (xorob_XRB_1_10231_V) ;
|
||||
dry_A = regA "niexef" ;
|
||||
dull_A = sameA "tad-dwejjaq" ;
|
||||
dust_N = mkNColl "trab" ; -- not sure but sounds right
|
||||
ear_N = possN (mkNDual "widna") ;
|
||||
earth_N = mkN "art" "artijiet" feminine ;
|
||||
-- easy_A2V
|
||||
-- eat_V2
|
||||
easy_A2V = sameA "faċli" ;
|
||||
eat_V2 = dirV2 (kiel_KJL_1_8672_V) ;
|
||||
egg_N = mkNColl "bajd" ;
|
||||
empty_A = mkA "vojt" "vojta" "vojta" ;
|
||||
enemy_N = mkN "għadu" "għedewwa" ;
|
||||
eye_N = possN (mk5N "għajn" [] "għajnejn" "għajnejn" "għejun" feminine) ;
|
||||
factory_N = mkN "fabbrika" ;
|
||||
fall_V = mkV "waqa'" (mkRoot "w-q-għ") ;
|
||||
-- far_Adv
|
||||
fall_V = waqa'_WQGH_1_10070_V ;
|
||||
far_Adv = mkAdv "il-bogħod" ; -- use glue?
|
||||
fat_N = mkNColl "xaħam" ;
|
||||
father_N2 = mkN2 (possN (mkN "missier" "missierijiet")) ;
|
||||
-- fear_V2
|
||||
-- fear_VS
|
||||
fear_V2 = prepV2 (beza'_BZGH_1_7541_V) minnP ;
|
||||
fear_VS = beza'_BZGH_1_7541_V;
|
||||
feather_N = mkNColl "rix" ;
|
||||
fight_V2 = mkV_VI "ġġieled" (mkRoot "ġ-l-d") ;
|
||||
find_V2 = mkV "sab" (mkRoot "s-j-b") ;
|
||||
fight_V2 = prepV2 (ggieled_GLD_6_8074_V) maP ;
|
||||
find_V2 = lilV2 (sab_SJB_1_9779_V) ;
|
||||
fingernail_N = possN (mkN "difer" [] "difrejn" "dwiefer" []) ;
|
||||
fire_N = mkN "nar" "nirien" ;
|
||||
fish_N = mkNColl "ħut" ;
|
||||
-- float_V
|
||||
earth_N = mkN "art" "artijiet" feminine ;
|
||||
-- flow_V
|
||||
floor_N = mkN "art" "artijiet" feminine ;
|
||||
flower_N = mkN "fjura" ;
|
||||
fly_V = mkV "tar" (mkRoot "t-j-r") ;
|
||||
-- flow_V
|
||||
fly_V = tar_TJR_1_9972_V ;
|
||||
fog_N = mkN [] "ċpar" [] [] [] ;
|
||||
foot_N = possN (mk5N "sieq" [] "saqajn" "saqajn" [] feminine) ;
|
||||
forest_N = mkN "foresta" ; -- also MASĠAR
|
||||
forget_V2 = mkV "nesa" (mkRoot "n-s-j") ;
|
||||
-- freeze_V
|
||||
forget_V2 = lilV2 (nesa_NSJ_1_9126_V) ;
|
||||
freeze_V = ffriza_V ;
|
||||
fridge_N = mkN "friġġ" "friġġijiet" ;
|
||||
friend_N = possN (mkN "ħabib" "ħbieb") ; -- feminine: ĦABIBA
|
||||
fruit_N = mkNColl "frott" ;
|
||||
full_A = regA "mimli" ;
|
||||
-- fun_AV
|
||||
fun_AV = sameA "pjaċevoli" ;
|
||||
garden_N = mkN "ġnien" "ġonna" ;
|
||||
girl_N = mkN "tifla" "tfal" ;
|
||||
-- give_V3
|
||||
give_V3 = mkV3 ta_GHTJ_1_10767_V lilP ;
|
||||
glove_N = mkN "ingwanta" ;
|
||||
go_V = mkV "mar" (mkRoot "m-w-r") ;
|
||||
go_V = mar_MWR_1_8918_V ;
|
||||
gold_N = mkN [] "deheb" [] "dehbijiet" [] ;
|
||||
good_A = mkA "tajjeb" "tajba" "tajbin" ;
|
||||
grammar_N = mkN "grammatika" ;
|
||||
@@ -145,62 +148,62 @@ concrete LexiconMlt of Lexicon = CatMlt **
|
||||
hand_N = possN (mk5N "id" [] "idejn" "idejn" [] feminine) ;
|
||||
harbour_N = mkN "port" "portijiet" ;
|
||||
hat_N = mkN "kappell" "kpiepel" ;
|
||||
-- hate_V2
|
||||
hate_V2 = lilV2 (baghad_BGHD_1_7402_V) ;
|
||||
head_N = possN (mkN "ras" "rjus" feminine) ;
|
||||
hear_V2 = mkV "sema'" (mkRoot "s-m-għ") ;
|
||||
hear_V2 = lilV2 (sema'_SMGH_1_9698_V) ;
|
||||
heart_N = possN (mkN "qalb" "qlub" feminine) ;
|
||||
heavy_A = brokenA "tqil" "tqal" "itqal" ;
|
||||
hill_N = mkN "għolja" "għoljiet" ;
|
||||
hit_V2 = mkV "laqat" (mkRoot "l-q-t") ;
|
||||
-- hold_V2
|
||||
hope_VS = mkV_VIII "xtaq" (mkRoot "x-w-q") ;
|
||||
hit_V2 = lilV2 (laqat_LQT_1_8772_V) ;
|
||||
hold_V2 = lilV2 (zamm_ZMM_1_10392_V) ;
|
||||
hope_VS = xtaq_XWQ_8_10313_V ;
|
||||
horn_N = mkN "ħorn" "ħornijiet" ;
|
||||
horse_N = mkN "żiemel" "żwiemel" ;
|
||||
hot_A = brokenA "sħun" "sħan" ;
|
||||
hot_A = mkA "jaħraq" "taħraq" "jaħarqu" ;
|
||||
house_N = mkN "dar" "djar" feminine ;
|
||||
-- hunt_V2
|
||||
hunt_V2 = prepV2 (kaccac_KCC_2_8571_V) ghalP ;
|
||||
husband_N = mkN "raġel" "rġiel" ;
|
||||
ice_N = mkN "silġ" "silġiet" ;
|
||||
important_A = sameA "importanti" ;
|
||||
industry_N = mkN "industrija" ;
|
||||
iron_N = mk5N "ħadida" "ħadid" [] "ħadidiet" "ħdejjed" masculine ;
|
||||
john_PN = mkPN "Ġanni" masculine singular ;
|
||||
jump_V = mkV "qabeż" (mkRoot "q-b-ż") ;
|
||||
kill_V2 = mkV "qatel" "oqtol" (mkRoot "q-t-l") ;
|
||||
jump_V = qabez_QBZ_1_9182_V ;
|
||||
kill_V2 = lilV2 (qatel_QTL_1_9312_V) ;
|
||||
king_N = mkN "re" "rejjiet" ;
|
||||
knee_N = possN (mkN "rkoppa" [] "rkopptejn" "rkoppiet" []) ; -- TODO use mkNDual
|
||||
-- know_V2
|
||||
-- know_VQ
|
||||
-- know_VS
|
||||
know_V2 = lilV2 (af_''F_1_10774_V) ;
|
||||
know_VQ = af_''F_1_10774_V ;
|
||||
know_VS = af_''F_1_10774_V ;
|
||||
lake_N = mkN "għadira" "għadajjar" ;
|
||||
lamp_N = mkN "lampa" ;
|
||||
language_N = mkN "lingwa" ; -- lsien?
|
||||
laugh_V = mkV "daħak" (mkRoot "d-ħ-k") ;
|
||||
laugh_V = dahak_DHK_1_7688_V ;
|
||||
leaf_N = mkN "werqa" "weraq" "werqtejn" "werqiet" [] ;
|
||||
learn_V2 = mkV_V "tgħallem" (mkRoot "għ-l-m") ;
|
||||
learn_V2 = dirV2 (tghallem_GHLM_5_10527_V) ;
|
||||
leather_N = mkN "ġilda" "ġild" [] "ġildiet" "ġlud" ; -- mkNColl "ġild" ;
|
||||
leave_V2 = mkV "telaq" (mkRoot "t-l-q") ;
|
||||
-- left_Ord
|
||||
leave_V2 = prepV2 (telaq_TLQ_1_9903_V) minnP ;
|
||||
left_Ord = mkOrd "xellug" ;
|
||||
leg_N = possN (mkN "riġel" [] "riġlejn" [] []) ; -- SIEQ
|
||||
lie_V = mkV_VIII "mtedd" (mkRoot "m-d-d") ;
|
||||
-- like_V2
|
||||
listen_V2 = mkV "sema'" (mkRoot "s-m-għ") ;
|
||||
live_V = mkV "għex" (mkRoot "għ-j-x") ;
|
||||
lie_V = mtedd_MDD_8_8816_V ; -- lie down
|
||||
like_V2 = lilV2 (ghogob_GHGB_1_10485_V) ;
|
||||
listen_V2 = lilV2 (sema'_SMGH_1_9698_V) ;
|
||||
live_V = ghex_GHJX_1_10711_V ;
|
||||
liver_N = mkN "fwied" [] [] [] "ifdwa" ;
|
||||
long_A = brokenA "twil" "twal" "itwal" ;
|
||||
lose_V2 = mkV "tilef" (mkRoot "t-l-f") ;
|
||||
lose_V2 = lilV2 (tilef_TLF_1_9895_V) ;
|
||||
louse_N = mkN "qamla" "qamliet" ;
|
||||
love_N = mkN "mħabba" "mħabbiet" ;
|
||||
love_V2 = mkV "ħabb" (mkRoot "ħ-b-b") ;
|
||||
love_V2 = lilV2 (habb_HBB_1_8174_V) ;
|
||||
man_N = mkN "raġel" "rġiel" ;
|
||||
-- married_A2
|
||||
married_A2 = mkA2 (mkA "miżżewweġ" "miżżewġa") lilP ;
|
||||
meat_N = mkN "laħam" [] [] "laħmiet" "laħmijiet" ;
|
||||
milk_N = mkN [] "ħalib" [] "ħalibijiet" "ħlejjeb" ;
|
||||
moon_N = mkN "qamar" "oqmra" ; -- QMURA
|
||||
mother_N2 = mkN2 (possN (mkN "omm" "ommijiet" feminine)) ;
|
||||
mountain_N = mkN "muntanja" ;
|
||||
mouth_N = possN (mkN "ħalq" "ħluq") ;
|
||||
music_N = mkNNoPlural "musika" ;
|
||||
music_N = mkN "mużika" "mużiki" ;
|
||||
name_N = possN (mkN "isem" "ismijiet") ;
|
||||
narrow_A = mkA "dejjaq" "dejqa" "dojoq" "idjaq" ;
|
||||
near_A = regA "viċin" ;
|
||||
@@ -209,12 +212,12 @@ concrete LexiconMlt of Lexicon = CatMlt **
|
||||
newspaper_N = mkN "gazzetta" ;
|
||||
night_N = mkN "lejl" "ljieli" ;
|
||||
nose_N = possN (mkN "mnieħer" "mniħrijiet") ;
|
||||
-- now_Adv
|
||||
now_Adv = mkAdv "issa" ;
|
||||
number_N = mkN "numru" ;
|
||||
oil_N = mkN "żejt" "żjut" ;
|
||||
old_A = brokenA "qadim" "qodma" "eqdem" ;
|
||||
open_V2 = mkV "fetaħ" (mkRoot "f-t-ħ") ;
|
||||
-- paint_V2A
|
||||
open_V2 = dirV2 (fetah_FTH_1_7932_V) ;
|
||||
paint_V2A = dirV2 (pitter_PTR_2_9152_V) ;
|
||||
paper_N = mkN "karta" ;
|
||||
paris_PN = mkPN "Pariġi" feminine singular ;
|
||||
peace_N = mkN "paċi" "paċijiet" feminine ;
|
||||
@@ -222,26 +225,26 @@ concrete LexiconMlt of Lexicon = CatMlt **
|
||||
person_N = mk5N [] "persuna" [] "persuni" [] masculine ;
|
||||
planet_N = mkN "pjaneta" ;
|
||||
plastic_N = mkNNoPlural "plastik" ;
|
||||
play_V = mkV "lagħab" (mkRoot "l-għ-b") ;
|
||||
play_V = mkV "lagħab" (mkRoot "l-għ-b") ;
|
||||
play_V = daqq_DQQ_1_7736_V ;
|
||||
play_V2 = prepV2 (laghab_LGHB_1_8724_V) maP ;
|
||||
policeman_N = mkNNoPlural "pulizija" ;
|
||||
priest_N = mkN "qassis" "qassisin" ;
|
||||
-- probable_AS
|
||||
pull_V2 = mkV "ġibed" (mkRoot "ġ-b-d") ;
|
||||
-- push_V2
|
||||
put_V2 = mkV_III "qiegħed" (mkRoot "q-għ-d") ;
|
||||
probable_AS = mkAS (sameA "probabbli") ;
|
||||
pull_V2 = lilV2 (gibed_GBD_1_8043_V) ;
|
||||
push_V2 = dirV2 (mbotta_V) ; -- GĦAFAS
|
||||
put_V2 = lilV2 (qieghed_QGHD_3_9212_V) ;
|
||||
queen_N = mkN "reġina" "rġejjen" ;
|
||||
question_N = mkN "mistoqsija" "mistoqsijiet" ; -- DOMANDA
|
||||
radio_N = mkN "radju" "radjijiet" ;
|
||||
rain_N = mkNNoPlural "xita" ;
|
||||
-- rain_V0
|
||||
read_V2 = mkV "qara" (mkRoot "q-r-j") ;
|
||||
rain_V0 = xita_XTW_1_10297_V ; -- TAGĦMEL IX-XITA
|
||||
read_V2 = dirV2 (qara_QRJ_1_9350_V) ;
|
||||
ready_A = regA "lest" ;
|
||||
reason_N = mkN "raġun" "raġunijiet" ;
|
||||
red_A = mkA "aħmar" "ħamra" "ħomor" ;
|
||||
religion_N = mkN "reliġjon" "reliġjonijiet" ;
|
||||
restaurant_N = mkN "restorant" ;
|
||||
-- right_Ord
|
||||
right_Ord = mkOrd "lemin" ;
|
||||
river_N = mkN "xmara" "xmajjar" ;
|
||||
road_N = mk5N "triq" [] [] "triqat" "toroq" feminine ;
|
||||
rock_N = mkN "blata" "blat" [] "blatiet" "blajjiet" ; -- in dictionary BLAT and BLATA are separate!
|
||||
@@ -250,23 +253,23 @@ concrete LexiconMlt of Lexicon = CatMlt **
|
||||
rope_N = mkN "ħabel" "ħbula" ;
|
||||
rotten_A = mkA "mħassar" "mħassra" "mħassrin" ;
|
||||
round_A = regA "tond" ;
|
||||
-- rub_V2
|
||||
rub_V2 = dirV2 (ghorok_GHRK_1_10599_V) ;
|
||||
rubber_N = mkN "gomma" "gomom" ;
|
||||
rule_N = mkN "regola" ;
|
||||
run_V = mkV "ġera" (mkRoot "ġ-r-j") ;
|
||||
run_V = gera_GRJ_1_8131_V ;
|
||||
salt_N = mkN "melħ" "melħiet" ;
|
||||
sand_N = mkN "ramla" "ramel" [] "ramliet" "rmiel" ;
|
||||
-- say_VS
|
||||
say_VS = qal_QWL_1_9357_V ;
|
||||
school_N = mkN "skola" "skejjel" ;
|
||||
science_N = mkN "xjenza" ;
|
||||
scratch_V2 = mkV "barax" (mkRoot "b-r-x") ;
|
||||
scratch_V2 = lilV2 (barax_BRX_1_7504_V) ;
|
||||
sea_N = mkN "baħar" [] "baħrejn" "ibħra" [] ;
|
||||
-- see_V2
|
||||
see_V2 = lilV2 (ra_R'J_1_9513_V) ;
|
||||
seed_N = mkN "żerriegħa" "żerrigħat" ;
|
||||
seek_V2 = mkV_II "fittex" (mkRoot "f-t-x") ;
|
||||
sell_V3 = mkV "biegħ" (mkRoot "b-j-għ") ;
|
||||
send_V3 = mkV "bagħat" (mkRoot "b-għ-t") ;
|
||||
sew_V = mkV "ħat" (mkRoot "ħ-j-t") ;
|
||||
seek_V2 = lilV2 (fittex_FTX_2_7952_V) ;
|
||||
sell_V3 = mkV3 biegh_BJGH_1_7565_V lilP ;
|
||||
send_V3 = mkV3 baghat_BGHT_1_7412_V lilP ;
|
||||
sew_V = hat_HJT_1_8508_V ;
|
||||
sharp_A = mkA "jaqta'" "taqta'" "jaqtgħu" ;
|
||||
sheep_N = mkN "nagħġa" "nagħaġ" [] "nagħġiet" [] ;
|
||||
ship_N = mkN "vapur" ;
|
||||
@@ -275,89 +278,104 @@ concrete LexiconMlt of Lexicon = CatMlt **
|
||||
shop_N = mkN "ħanut" "ħwienet" ;
|
||||
short_A = brokenA "qasir" "qosra" "iqsar" ;
|
||||
silver_N = mkN "fidda" "fided" ;
|
||||
sing_V = mkV "kanta" (mkRoot "k-n-t-j") ;
|
||||
sing_V = kanta_KNTJ_1_7016_V ;
|
||||
sister_N = possN (mkN "oħt" "aħwa" feminine) ;
|
||||
sit_V = mkV_II "poġġa" (mkRoot "p-ġ-j") ;
|
||||
sit_V = pogga_PGJ_2_9157_V ;
|
||||
skin_N = mkN "ġilda" "ġildiet" ;
|
||||
sky_N = mkN "sema" "smewwiet" masculine ;
|
||||
sleep_V = mkV "raqad" (mkRoot "r-q-d") ;
|
||||
sleep_V = raqad_RQD_1_9469_V ;
|
||||
small_A = brokenA "zgħir" "zgħar" "iżgħar" ;
|
||||
smell_V = mkV "xamm" (mkRoot "x-m-m") ;
|
||||
smell_V = xamm_XMM_1_10207_V ;
|
||||
smoke_N = mkN "duħħan" "dħaħen" ;
|
||||
smooth_A = regA "lixx" ;
|
||||
snake_N = mkN "serp" "sriep" ;
|
||||
snow_N = mkN [] "borra" [] [] [] ;
|
||||
sock_N = mkN "kalzetta" ;
|
||||
song_N = mkN "kanzunetta" ;
|
||||
-- speak_V2
|
||||
spit_V = mkV "beżaq" (mkRoot "b-ż-q") ;
|
||||
split_V2 = mkV "qasam" (mkRoot "q-s-m") ;
|
||||
-- squeeze_V2
|
||||
stab_V2 = mkV_II "mewwes" (mkRoot "m-w-s") ;
|
||||
speak_V2 = prepV2 (kellem_KLM_2_8597_V) maP ;
|
||||
spit_V = bezaq_BZQ_1_7549_V ;
|
||||
split_V2 = lilV2 (qasam_QSM_1_9292_V) ;
|
||||
squeeze_V2 = dirV2 (ghasar_GHSR_1_10625_V) ;
|
||||
stab_V2 = lilV2 (mewwes_MWS_2_8921_V) ;
|
||||
-- stand_V
|
||||
star_N = mkN "stilla" "stilel" ;
|
||||
steel_N = mkNNoPlural "azzar" ;
|
||||
stick_N = mkN "lasta" ;
|
||||
stone_N = mkN "ġebla" "ġebel" [] "ġebliet" "ġbiel" ;
|
||||
stop_V = mkV "waqaf" (mkRoot "w-q-f") ;
|
||||
stop_V = waqaf_WQF_1_10067_V ;
|
||||
stove_N = mkN "kuker" "kukers" ; -- FUKLAR
|
||||
straight_A = regA "dritt" ;
|
||||
student_N = mkN "student" ;
|
||||
stupid_A = mkA "iblah" "belha" "boloh" ;
|
||||
suck_V2 = mkV "rada'" (mkRoot "r-d-għ") ;
|
||||
suck_V2 = lilV2 (rada'_RDGH_1_9388_V) ;
|
||||
sun_N = mkN "xemx" "xmux" feminine ;
|
||||
swell_V = mkV_VIII "ntefaħ" (mkRoot "n-f-ħ") ;
|
||||
swim_V = mkV "għam" (mkRoot "għ-w-m") ;
|
||||
switch8off_V2 = mkV "tefa" (mkRoot "t-f-j") ;
|
||||
switch8on_V2 = mkV "xegħel" (mkRoot "x-għ-l") ;
|
||||
swell_V = ntefah_NFH_8_8970_V ;
|
||||
swim_V = gham_GHWM_1_10750_V ;
|
||||
switch8off_V2 = dirV2 (tefa_TFJ_1_9960_V) ;
|
||||
switch8on_V2 = dirV2 (xeghel_XGHL_1_10155_V) ;
|
||||
table_N = mkN "mejda" "mwejjed" ;
|
||||
tail_N = possN (mkN "denb" "dnieb") ;
|
||||
-- talk_V3
|
||||
teach_V2 = mkV_II "għallem" (mkRoot "għ-l-m") ;
|
||||
talk_V3 = mkV3 kellem_KLM_2_8597_V maP fuqP ; -- PAĊPAĊ, PARLA
|
||||
teach_V2 = lilV2 (ghallem_GHLM_2_10526_V) ;
|
||||
teacher_N = mkN "għalliem" "għalliema" ; -- feminine: GĦALLIEMA
|
||||
television_N = mkN "televixin" "televixins" ;
|
||||
thick_A = mkA "oħxon" "ħoxna" "ħoxnin" "eħxen" ;
|
||||
thin_A = brokenA "rqiq" "rqaq" "rqaq" ;
|
||||
think_V = mkV "ħaseb" (mkRoot "ħ-s-b") ;
|
||||
throw_V2 = mkV_II "waddab" (mkRoot "w-d-b") ;
|
||||
tie_V2 = mkV "qafel" (mkRoot "q-f-l") ;
|
||||
-- today_Adv
|
||||
think_V = haseb_HSB_1_8387_V ;
|
||||
throw_V2 = dirV2 (waddab_WDB_2_10027_V) ;
|
||||
tie_V2 = dirV2 (qafel_QFL_1_9206_V) ;
|
||||
today_Adv = mkAdv "illum" ;
|
||||
tongue_N = possN (mkN "lsien" "ilsna") ;
|
||||
tooth_N = possN (mkN "sinna" [] [] "sinniet" "snien") ; -- DARSA
|
||||
train_N = mkN "ferrovija" ;
|
||||
-- travel_V
|
||||
travel_V = vvjagga_V ;
|
||||
tree_N = mkN "siġra" "siġar" [] "siġriet" [] ;
|
||||
turn_V = mkV "dar" (mkRoot "d-w-r") ;
|
||||
turn_V = dar_DWR_1_7803_V ;
|
||||
ugly_A = mkA "ikrah" "kerha" "koroh" ;
|
||||
uncertain_A = regA "inċert" ;
|
||||
-- understand_V2 --- missing from dict
|
||||
understand_V2 = lilV2 (fehem_FHM_1_10830_V) ;
|
||||
university_N = mkN "università" "universitàjiet" ;
|
||||
village_N = possN (mkN "raħal" "rħula") ; -- VILLAĠĠ
|
||||
vomit_V = mkV "qala'" (mkRoot "q-l-għ") ;
|
||||
-- wait_V2
|
||||
walk_V = mkV "mexa" (mkRoot "m-x-j") ;
|
||||
vomit_V = qala'_QLGH_1_9223_V ;
|
||||
wait_V2 = lilV2 (stenna_'NJ_10_10781_V) ;
|
||||
walk_V = mexa_MXJ_1_8926_V ;
|
||||
war_N = mkN "gwerra" "gwerrer" ;
|
||||
warm_A = hot_A ;
|
||||
wash_V2 = mkV "ħasel" (mkRoot "ħ-s-l") ;
|
||||
-- watch_V2
|
||||
warm_A = brokenA "sħun" "sħan" ;
|
||||
wash_V2 = lilV2 (hasel_HSL_1_8395_V) ;
|
||||
watch_V2 = dirV2 (ra_R'J_1_9513_V) ;
|
||||
water_N = mkN "ilma" "ilmijiet" masculine ;
|
||||
wet_A = mkA "mxarrab" "mxarrba" "mxarrbin" ;
|
||||
white_A = mkA "abjad" "bajda" "bojod" ;
|
||||
wide_A = broad_A ;
|
||||
wife_N = mkN "mara" "nisa" ;
|
||||
win_V2 = mkV "rebaħ" (mkRoot "r-b-ħ") ;
|
||||
win_V2 = dirV2 (rebah_RBH_1_9371_V) ;
|
||||
wind_N = mkN "riħ" [] [] "rjieħ" "rjiħat" ;
|
||||
window_N = mkN "tieqa" "twieqi" ;
|
||||
wine_N = mkN [] "nbid" [] [] "nbejjed" ;
|
||||
wing_N = mkN "ġewnaħ" "ġwienaħ" ;
|
||||
wipe_V2 = mkV "mesaħ" (mkRoot "m-s-ħ") ;
|
||||
wipe_V2 = dirV2 (mesah_MSH_1_8881_V) ;
|
||||
woman_N = mkN "mara" "nisa" ;
|
||||
-- wonder_VQ
|
||||
wonder_VQ = kkuntempla_V ;
|
||||
wood_N = mkN "injam" "injamiet" ;
|
||||
worm_N = mkN "dudu" "dud" [] "dudiet" "dwied" ;
|
||||
write_V2 = mkV "kiteb" (mkRoot "k-t-b") ;
|
||||
write_V2 = dirV2 (kiteb_KTB_1_8641_V) ;
|
||||
year_N = mkN "sena" [] "sentejn" "snin" [] ;
|
||||
yellow_A = mkA "isfar" "safra" "sofor" ;
|
||||
young_A = small_A ;
|
||||
|
||||
oper
|
||||
fuqP = mkPrep "fuq" ;
|
||||
ghandP = mkPrep "għand" ;
|
||||
ghalP = mkPrep "għal" ;
|
||||
minnP = mkPrep "minn" ;
|
||||
goP = mkPrep "ġo" ;
|
||||
lilP = mkPrep "lil" ;
|
||||
maP = mkPrep "ma'" ;
|
||||
taP = mkPrep "ta'" ;
|
||||
biP = mkPrep "bi" ;
|
||||
fiP = mkPrep "fi" ;
|
||||
|
||||
lilV2 : V -> V2 ;
|
||||
lilV2 v = prepV2 v (mkPrep "lil") ;
|
||||
|
||||
} ;
|
||||
|
||||
@@ -17,10 +17,11 @@ resource MorphoMlt = ResMlt ** open Prelude in {
|
||||
oper
|
||||
mkDeterminer : Number -> Str -> Determiner = \n,s -> {
|
||||
s = \\gen => s ;
|
||||
n = Num n ; -- Number -> NumForm
|
||||
n = NumX n ; -- Number -> NumForm
|
||||
clitic = [] ;
|
||||
hasNum = False ;
|
||||
isPron = False ;
|
||||
isDefn = False ;
|
||||
} ;
|
||||
|
||||
{- Pronoun -------------------------------------------------------------- -}
|
||||
|
||||
@@ -15,22 +15,22 @@ concrete NounMlt of Noun = CatMlt ** open ResMlt, Prelude in {
|
||||
chooseNounNumForm : Det -> CN -> Str = \det,n ->
|
||||
let
|
||||
det' = det.s ! n.g ;
|
||||
sing = n.s ! Singular Singulative ;
|
||||
sing = n.s ! Singulative ;
|
||||
coll = if_then_Str n.hasColl
|
||||
(n.s ! Singular Collective) -- BAQAR
|
||||
(n.s ! Plural Determinate) -- SNIEN
|
||||
(n.s ! Collective) -- BAQAR
|
||||
(n.s ! Plural) -- SNIEN
|
||||
;
|
||||
dual = n.s ! Dual ;
|
||||
pdet = n.s ! Plural Determinate ;
|
||||
pind = n.s ! Plural Indeterminate ;
|
||||
plur = n.s ! Plural ;
|
||||
-- pind = n.s ! Plural Indeterminate ;
|
||||
in case det.n of {
|
||||
Num Sg => det' ++ sing ; -- BAQRA
|
||||
Num Pl => det' ++ coll ; -- BAQAR (coll) / ħafna SNIEN (pdet)
|
||||
NumX Sg => det' ++ sing ; -- BAQRA
|
||||
NumX Pl => det' ++ coll ; -- BAQAR (coll) / ħafna SNIEN (pdet)
|
||||
Num0 => det' ++ sing ; -- L-EBDA BAQRA
|
||||
Num1 => det' ++ sing ; -- BAQRA
|
||||
Num2 => if_then_Str n.hasDual
|
||||
dual -- BAQARTEJN
|
||||
(det' ++ pdet) -- ŻEWĠ IRĠIEL
|
||||
(det' ++ plur) -- ŻEWĠ IRĠIEL
|
||||
;
|
||||
Num3_10 => det' ++ coll ; -- TLETT BAQAR
|
||||
Num11_19 => det' ++ sing ; -- ĦDAX-IL BAQRA
|
||||
@@ -40,45 +40,51 @@ concrete NounMlt of Noun = CatMlt ** open ResMlt, Prelude in {
|
||||
lin
|
||||
-- Det -> CN -> NP
|
||||
DetCN det cn = {
|
||||
s = \\c => case <det.isPron, cn.takesPron> of {
|
||||
<True,True> => glue (cn.s ! numform2nounnum det.n) det.clitic ;
|
||||
<True,_> => artDef ++ cn.s ! numform2nounnum det.n ++ det.s ! cn.g ;
|
||||
_ => chooseNounNumForm det cn
|
||||
s = table {
|
||||
Nom => case <det.isPron, cn.takesPron> of {
|
||||
<True,True> => glue (cn.s ! numform2nounnum det.n) det.clitic ;
|
||||
<True,_> => artDef ++ cn.s ! numform2nounnum det.n ++ det.s ! cn.g ;
|
||||
_ => chooseNounNumForm det cn
|
||||
} ;
|
||||
CPrep => cn.s ! numform2nounnum det.n
|
||||
} ;
|
||||
a = case (numform2nounnum det.n) of {
|
||||
Singular _ => mkAgr cn.g Sg P3 ;
|
||||
_ => mkAgr cn.g Pl P3
|
||||
Singulative => mkAgr cn.g Sg P3 ; --- collective?
|
||||
_ => mkAgr cn.g Pl P3
|
||||
} ;
|
||||
isPron = False ;
|
||||
isDefn = det.isDefn ;
|
||||
} ;
|
||||
|
||||
-- Quant -> Num -> Det
|
||||
DetQuant quant num = {
|
||||
s = \\gen =>
|
||||
let gennum = case num.n of { Num Sg => GSg gen ; _ => GPl }
|
||||
let gennum = case num.n of { NumX Sg => GSg gen ; _ => GPl }
|
||||
in case quant.isDemo of {
|
||||
True => quant.s ! gennum ++ artDef ++ num.s ! NumAdj ;
|
||||
False => quant.s ! gennum ++ num.s ! NumAdj
|
||||
} ;
|
||||
n = num.n ;
|
||||
clitic = quant.clitic ;
|
||||
hasNum = num.hasCard ;
|
||||
isPron = quant.isPron ;
|
||||
clitic = quant.clitic ;
|
||||
isDefn = quant.isDefn ;
|
||||
} ;
|
||||
|
||||
-- Quant -> Num -> Ord -> Det
|
||||
--- Almost an exact copy of DetQuant, consider factoring together
|
||||
DetQuantOrd quant num ord = {
|
||||
s = \\gen =>
|
||||
let gennum = case num.n of { Num Sg => GSg gen ; _ => GPl }
|
||||
let gennum = case num.n of { NumX Sg => GSg gen ; _ => GPl }
|
||||
in case quant.isDemo of {
|
||||
True => quant.s ! gennum ++ artDef ++ num.s ! NumAdj ++ ord.s ! NumAdj ;
|
||||
False => quant.s ! gennum ++ num.s ! NumAdj ++ ord.s ! NumAdj
|
||||
} ;
|
||||
n = num.n ;
|
||||
clitic = quant.clitic ;
|
||||
hasNum = True ;
|
||||
isPron = quant.isPron ;
|
||||
clitic = quant.clitic ;
|
||||
isDefn = quant.isDefn ;
|
||||
} ;
|
||||
|
||||
-- Quant
|
||||
@@ -87,12 +93,14 @@ concrete NounMlt of Noun = CatMlt ** open ResMlt, Prelude in {
|
||||
clitic = [] ;
|
||||
isPron = False ;
|
||||
isDemo = False ;
|
||||
isDefn = True ;
|
||||
} ;
|
||||
IndefArt = {
|
||||
s = \\_ => artIndef ;
|
||||
clitic = [] ;
|
||||
isPron = False ;
|
||||
isDemo = False ;
|
||||
isDefn = False ;
|
||||
} ;
|
||||
|
||||
-- PN -> NP
|
||||
@@ -100,6 +108,7 @@ concrete NounMlt of Noun = CatMlt ** open ResMlt, Prelude in {
|
||||
s = \\c => pn.s ;
|
||||
a = pn.a ;
|
||||
isPron = False ;
|
||||
isDefn = False ;
|
||||
} ;
|
||||
|
||||
-- Pron -> NP
|
||||
@@ -110,6 +119,7 @@ concrete NounMlt of Noun = CatMlt ** open ResMlt, Prelude in {
|
||||
} ;
|
||||
a = p.a ;
|
||||
isPron = True ;
|
||||
isDefn = False ;
|
||||
} ;
|
||||
|
||||
-- Pron -> Quant
|
||||
@@ -118,11 +128,12 @@ concrete NounMlt of Noun = CatMlt ** open ResMlt, Prelude in {
|
||||
clitic = p.s ! Suffixed Gen ;
|
||||
isPron = True ;
|
||||
isDemo = False ;
|
||||
isDefn = True ;
|
||||
} ;
|
||||
|
||||
-- Num
|
||||
NumSg = {s = \\c => []; n = Num Sg ; hasCard = False} ;
|
||||
NumPl = {s = \\c => []; n = Num Pl ; hasCard = False} ;
|
||||
NumSg = {s = \\c => []; n = NumX Sg ; hasCard = False} ;
|
||||
NumPl = {s = \\c => []; n = NumX Pl ; hasCard = False} ;
|
||||
|
||||
-- Card -> Num
|
||||
NumCard n = n ** {hasCard = True} ;
|
||||
|
||||
@@ -35,7 +35,29 @@ resource ParadigmsMlt = open
|
||||
singular : Number = Sg ;
|
||||
plural : Number = Pl ;
|
||||
|
||||
{- Noun paradigms ----------------------------------------------------- -}
|
||||
form1 = FormI ;
|
||||
form2 = FormII ;
|
||||
form3 = FormIII ;
|
||||
form4 = FormIV ;
|
||||
form5 = FormV ;
|
||||
form6 = FormVI ;
|
||||
form7 = FormVII ;
|
||||
form8 = FormVIII ;
|
||||
form9 = FormIX ;
|
||||
form10 = FormX ;
|
||||
|
||||
strong = Strong Regular ;
|
||||
liquidMedial = Strong LiquidMedial ;
|
||||
geminated = Strong Geminated ;
|
||||
assimilative = Weak Assimilative ;
|
||||
hollow = Weak Hollow ;
|
||||
lacking = Weak Lacking ;
|
||||
quad = Quad QStrong ;
|
||||
quadWeak = Quad QWeak ;
|
||||
loan = Loan ;
|
||||
irregular = Irregular ;
|
||||
|
||||
{- Noun --------------------------------------------------------------- -}
|
||||
|
||||
-- Helper function for inferring noun plural from singulative
|
||||
-- Nouns with collective & determinate forms should not use this...
|
||||
@@ -216,78 +238,46 @@ resource ParadigmsMlt = open
|
||||
takesPron = True ;
|
||||
} ;
|
||||
|
||||
{-
|
||||
-- Correctly abbreviate definite prepositions and join with noun
|
||||
-- Params:
|
||||
-- preposition (eg TAL, MAL, BĦALL)
|
||||
-- noun
|
||||
abbrevPrepositionDef : Str -> Str -> Str = \prep,noun ->
|
||||
let
|
||||
-- Remove either 1 or 2 l's
|
||||
prepStem : Str = case prep of {
|
||||
_ + "ll" => dropSfx 2 prep ;
|
||||
_ + "l" => dropSfx 1 prep ;
|
||||
_ => prep -- this should never happen, I don't think
|
||||
}
|
||||
in
|
||||
case noun of {
|
||||
("s"|#LiquidCons) + #Consonant + _ => prep + "-i" + noun ;
|
||||
("għ" | #Vowel) + _ => case prep of {
|
||||
("fil"|"bil") => (takePfx 1 prep) + "l-" + noun ;
|
||||
_ => prep + "-" + noun
|
||||
};
|
||||
K@#CoronalConsonant + _ => prepStem + K + "-" + noun ;
|
||||
#Consonant + _ => prep + "-" + noun ;
|
||||
_ => []
|
||||
} ;
|
||||
-}
|
||||
-- Correctly abbreviate indefinite prepositions and join with noun
|
||||
-- Params:
|
||||
-- preposition (eg TA', MA', BĦAL)
|
||||
-- noun
|
||||
abbrevPrepositionIndef : Str -> Str -> Str = \prep,noun ->
|
||||
let
|
||||
initPrepLetter = takePfx 1 prep ;
|
||||
initNounLetter = takePfx 1 noun
|
||||
in
|
||||
if_then_Str (isNil noun) [] (
|
||||
case prep of {
|
||||
{- Preposition -------------------------------------------------------- -}
|
||||
|
||||
-- TA', MA', SA
|
||||
_ + ("a'"|"a") =>
|
||||
case noun of {
|
||||
#Vowel + _ => initPrepLetter + "'" + noun ;
|
||||
("għ" | "h") + #Vowel + _ => initPrepLetter + "'" + noun ;
|
||||
_ => prep ++ noun
|
||||
mkPrep = overload {
|
||||
-- Same in all cases, e.g. FUQ
|
||||
mkPrep : Str -> Prep = \fuq -> lin Prep {
|
||||
s = \\defn => fuq ;
|
||||
takesDet = False
|
||||
} ;
|
||||
|
||||
-- Forms:
|
||||
-- GĦAL ktieb / triq / ajruplan
|
||||
-- GĦALL-ktieb / ajruplan
|
||||
-- GĦAT-triq
|
||||
mkPrep : Str -> Str -> Str -> Prep = \ghal,ghall,ghat -> lin Prep {
|
||||
s = table {
|
||||
Indefinite => ghal ;
|
||||
Definite => makePreFull ghall (dropSfx 2 ghat) ghall
|
||||
} ;
|
||||
takesDet = True
|
||||
} ;
|
||||
|
||||
-- FI, BI
|
||||
_ + "i" =>
|
||||
if_then_Str (pbool2bool (eqStr initPrepLetter initNounLetter))
|
||||
(prep ++ noun)
|
||||
(case noun of {
|
||||
-- initPrepLetter + _ => prep ++ noun ;
|
||||
#Vowel + _ => initPrepLetter + "'" + noun ;
|
||||
#Consonant + #Vowel + _ => initPrepLetter + "'" + noun ;
|
||||
#Consonant + "r" + #Vowel + _ => initPrepLetter + "'" + noun ;
|
||||
_ => prep ++ noun
|
||||
}) ;
|
||||
|
||||
-- Else leave untouched
|
||||
_ => prep ++ noun
|
||||
|
||||
});
|
||||
|
||||
{- Prepositions ------------------------------------------------------- -}
|
||||
|
||||
mkPrep : Str -> Prep ; -- e.g. "in front of"
|
||||
mkPrep p = lin Prep (ss p) ;
|
||||
-- All forms:
|
||||
-- BI ktieb/triq
|
||||
-- B'ajruplan
|
||||
-- BIL-ktieb
|
||||
-- BIT-triq
|
||||
-- BL-ajruplan
|
||||
mkPrep : Str -> Str -> Str -> Str -> Str -> Prep = \bi,b',bil,bit,bl -> lin Prep {
|
||||
s = table {
|
||||
Indefinite => makePreVowel bi b' ;
|
||||
Definite => makePreFull bil (dropSfx 2 bit) bl
|
||||
} ;
|
||||
takesDet = True
|
||||
} ;
|
||||
} ;
|
||||
|
||||
noPrep : Prep ; -- no preposition
|
||||
noPrep = mkPrep [] ;
|
||||
|
||||
|
||||
{- Verb paradigms ----------------------------------------------------- -}
|
||||
{- Verb --------------------------------------------------------------- -}
|
||||
|
||||
-- Re-export ResMlt.mkRoot
|
||||
mkRoot : Root = overload {
|
||||
@@ -332,10 +322,6 @@ resource ParadigmsMlt = open
|
||||
<_,_,_,_> => Predef.error("Cannot classify root:"++r.C1+"-"+r.C2+"-"+r.C3+"-"+r.C4)
|
||||
} ;
|
||||
|
||||
-- Just get the non-suffixed forms of a verb, for quick testing
|
||||
-- plainVerbTable : V -> (VForm => Str) = \v ->
|
||||
-- \\tense => v.s ! tense ! VSuffixNone ! Pos ;
|
||||
|
||||
-- Smart paradigm for building a verb
|
||||
mkV : V = overload {
|
||||
|
||||
@@ -385,7 +371,7 @@ resource ParadigmsMlt = open
|
||||
Loan => loanV mamma
|
||||
} ;
|
||||
|
||||
-- All forms! :S
|
||||
-- All forms
|
||||
-- mkV (Strong Regular) (FormI) (mkRoot "k-t-b") (mkPattern "i" "e") "ktibt" "ktibt" "kiteb" "kitbet" "ktibna" "ktibtu" "kitbu" "nikteb" "tikteb" "jikteb" "tikteb" "niktbu" "tiktbu" "jiktbu" "ikteb" "iktbu"
|
||||
mkV : VClass -> VDerivedForm -> Root -> Pattern -> (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_ : Str) -> V =
|
||||
\class, form, root, patt,
|
||||
@@ -948,7 +934,12 @@ resource ParadigmsMlt = open
|
||||
i = info ;
|
||||
} ;
|
||||
|
||||
{- ~~~ Non-semitic verbs ~~~ -}
|
||||
{- ~~~ Irregular verbs ~~~ -}
|
||||
|
||||
-- Make an irregular verb, giving all forms (see last overload of mkV)
|
||||
irregularV = mkV Irregular ;
|
||||
|
||||
{- ~~~ Loan verbs ~~~ -}
|
||||
|
||||
-- Make a loan verb, eg IPPARKJA
|
||||
-- Params: mamma
|
||||
@@ -966,8 +957,57 @@ resource ParadigmsMlt = open
|
||||
i = info ;
|
||||
} ;
|
||||
|
||||
{- Verb --------------------------------------------------------------- -}
|
||||
|
||||
{- Adjective paradigms ------------------------------------------------ -}
|
||||
mkVS : V -> VS ; -- sentence-compl
|
||||
mkVS v = lin VS v ;
|
||||
|
||||
prepV2 : V -> Prep -> V2 ;
|
||||
prepV2 v p = lin V2 ( v ** { prep = p } ) ;
|
||||
|
||||
dirV2 : V -> V2 ;
|
||||
dirV2 v = prepV2 v noPrep ;
|
||||
|
||||
prepPrepV3 : V -> Prep -> Prep -> V3 ;
|
||||
prepPrepV3 v p t = lin V3 (v ** { prep1 = p ; prep2 = t }) ;
|
||||
|
||||
dirV3 : V -> Prep -> V3 ;
|
||||
dirV3 v p = prepPrepV3 v noPrep p ;
|
||||
|
||||
dirdirV3 : V -> V3 ;
|
||||
dirdirV3 v = dirV3 v noPrep ;
|
||||
|
||||
mkV3 : overload {
|
||||
mkV3 : V -> V3 ; -- ditransitive, e.g. give,_,_
|
||||
mkV3 : V -> Prep -> Prep -> V3 ; -- two prepositions, e.g. speak, with, about
|
||||
mkV3 : V -> Prep -> V3 ; -- give,_,to --%
|
||||
-- mkV3 : V -> Str -> V3 ; -- give,_,to --%
|
||||
-- mkV3 : Str -> Str -> V3 ; -- give,_,to --%
|
||||
-- mkV3 : Str -> V3 ; -- give,_,_ --%
|
||||
};
|
||||
mkV3 = overload {
|
||||
mkV3 : V -> V3 = dirdirV3 ;
|
||||
mkV3 : V -> Prep -> Prep -> V3 = prepPrepV3 ;
|
||||
mkV3 : V -> Prep -> V3 = dirV3 ;
|
||||
-- mkV3 : V -> Str -> V3 = \v,s -> dirV3 v (mkPrep s);
|
||||
-- mkV3 : Str -> Str -> V3 = \v,s -> dirV3 (regV v) (mkPrep s);
|
||||
-- mkV3 : Str -> V3 = \v -> dirdirV3 (regV v) ;
|
||||
} ;
|
||||
|
||||
mkV2V : V -> Prep -> Prep -> V2V ; -- e.g. want (noPrep NP) (to VP)
|
||||
mkV2V v p t = lin V2V (v ** { prep1 = p ; prep2 = t }) ;
|
||||
|
||||
{- Conjunction -------------------------------------------------------- -}
|
||||
|
||||
mkConj = overload {
|
||||
mkConj : Str -> Conj = \y -> mk2Conj [] y ;
|
||||
mkConj : Str -> Str -> Conj = \x,y -> mk2Conj x y ;
|
||||
} ;
|
||||
|
||||
mk2Conj : Str -> Str -> Conj = \x,y ->
|
||||
lin Conj (sd2 x y) ;
|
||||
|
||||
{- Adjective ---------------------------------------------------------- -}
|
||||
|
||||
-- Overloaded function for building an adjective
|
||||
mkA : A = overload {
|
||||
@@ -1058,8 +1098,38 @@ resource ParadigmsMlt = open
|
||||
_ => (init fem) + "i" -- BRAVA
|
||||
} ;
|
||||
|
||||
prepA2 : A -> Prep -> A2 ;
|
||||
prepA2 a p = lin A2 (a ** {c2 = p.s}) ;
|
||||
|
||||
{- Quantitifer paradigms ---------------------------------------------- -}
|
||||
mkA2 : overload {
|
||||
mkA2 : A -> Prep -> A2 ;
|
||||
mkA2 : A -> Str -> A2 ;
|
||||
} ;
|
||||
mkA2 = overload {
|
||||
mkA2 : A -> Prep -> A2 = prepA2 ;
|
||||
mkA2 : A -> Str -> A2 = \a,p -> prepA2 a (mkPrep p) ;
|
||||
} ;
|
||||
|
||||
AS, A2S, AV : Type = A ;
|
||||
A2V : Type = A2 ;
|
||||
|
||||
mkAS : A -> AS ;
|
||||
mkAS a = a ;
|
||||
|
||||
{- Adverb ------------------------------------------------------------- -}
|
||||
|
||||
mkAdv : Str -> Adv ; -- post-verbal adverb, e.g. ILLUM
|
||||
mkAdV : Str -> AdV ; -- preverbal adverb, e.g. DEJJEM
|
||||
|
||||
mkAdA : Str -> AdA ; -- adverb modifying adjective, e.g. PJUTTOST
|
||||
mkAdN : Str -> AdN ; -- adverb modifying numeral, e.g. MADWAR
|
||||
|
||||
mkAdv x = lin Adv (ss x) ;
|
||||
mkAdV x = lin AdV (ss x) ;
|
||||
mkAdA x = lin AdA (ss x) ;
|
||||
mkAdN x = lin AdN (ss x) ;
|
||||
|
||||
{- Quantifier, Ord ---------------------------------------------------- -}
|
||||
|
||||
mkQuant : (dak, dik, dawk : Str) -> Bool -> Quant = \dak,dik,dawk,isdemo -> lin Quant {
|
||||
s = table {
|
||||
@@ -1070,6 +1140,10 @@ resource ParadigmsMlt = open
|
||||
clitic = [] ;
|
||||
isPron = False ;
|
||||
isDemo = isdemo ;
|
||||
isDefn = False ;
|
||||
} ;
|
||||
|
||||
mkOrd : Str -> Ord = \x -> lin Ord { s = \\c => x };
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -22,6 +22,11 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
| GPl -- dawk
|
||||
;
|
||||
|
||||
Definiteness =
|
||||
Definite -- eg BIL-
|
||||
| Indefinite -- eg BI
|
||||
;
|
||||
|
||||
oper
|
||||
-- Agreement system corrected based on comments by [AZ]
|
||||
Agr : Type = { g : Gender ; n : Number ; p : Person } ;
|
||||
@@ -32,38 +37,30 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
case <agr.p,agr.n> of {
|
||||
<P1,num> => AgP1 num;
|
||||
<P2,num> => AgP2 num;
|
||||
<P3,Sg> => AgP3Sg agr.g;
|
||||
<P3,Pl> => AgP3Pl
|
||||
<P3,Sg> => AgP3Sg agr.g;
|
||||
<P3,Pl> => AgP3Pl
|
||||
} ;
|
||||
|
||||
toAgr : VAgr -> Agr = \vagr ->
|
||||
case vagr of {
|
||||
AgP1 num => mkAgr Masc num P1 ; --- sorry ladies
|
||||
AgP2 num => mkAgr Masc num P2 ;
|
||||
AgP1 num => mkAgr Masc num P1 ; --- sorry ladies
|
||||
AgP2 num => mkAgr Masc num P2 ;
|
||||
AgP3Sg gen => mkAgr gen Pl P3 ;
|
||||
AgP3Pl => mkAgr Masc Pl P3
|
||||
AgP3Pl => mkAgr Masc Pl P3
|
||||
} ;
|
||||
|
||||
param
|
||||
-- Agreement for verbs
|
||||
VAgr =
|
||||
AgP1 Number -- jiena, aħna
|
||||
| AgP2 Number -- inti, intom
|
||||
| AgP3Sg Gender -- huwa, hija
|
||||
| AgP3Pl -- huma
|
||||
AgP1 Number -- jiena, aħna
|
||||
| AgP2 Number -- inti, intom
|
||||
| AgP3Sg Gender -- huwa, hija
|
||||
| AgP3Pl -- huma
|
||||
;
|
||||
|
||||
param
|
||||
NPCase = Nom | CPrep ; -- [AZ]
|
||||
|
||||
-- Animacy = Animate | Inanimate ;
|
||||
|
||||
-- Definiteness =
|
||||
-- Definite -- eg IL-KARTA. In this context same as Determinate
|
||||
-- | Indefinite -- eg KARTA
|
||||
-- ;
|
||||
|
||||
|
||||
{- Numeral -------------------------------------------------------------- -}
|
||||
|
||||
CardOrd = NCard | NOrd ;
|
||||
@@ -80,13 +77,13 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
-- Indicate how a corresponding object should be treated
|
||||
--- Overlap between Num Sg and Num1, but leaving as is for now
|
||||
NumForm =
|
||||
Num Number -- Sg | Pl
|
||||
| Num0 -- 0 (l-edba SIEGĦA)
|
||||
| Num1 -- 1, 101... (SIEGĦA, mija u SIEGĦA)
|
||||
| Num2 -- 2 (SAGĦTEJN)
|
||||
| Num3_10 -- 3..10, 102, 103... (tlett SIEGĦAT, għaxar SIEGĦAT, mija u żewġ SIEGĦAT, mija u tlett SIEGĦAT)
|
||||
| Num11_19 -- 11..19, 111... (ħdax-il SIEGĦA, mija u dsatax-il SIEGĦA)
|
||||
| Num20_99 -- 20..99, 120... (għoxrin SIEGĦA, disa' u disgħajn SIEGĦA)
|
||||
NumX Number -- Sg | Pl
|
||||
| Num0 -- 0 (l-edba SIEGĦA)
|
||||
| Num1 -- 1, 101... (SIEGĦA, mija u SIEGĦA)
|
||||
| Num2 -- 2 (SAGĦTEJN)
|
||||
| Num3_10 -- 3..10, 102, 103... (tlett SIEGĦAT, għaxar SIEGĦAT, mija u żewġ SIEGĦAT, mija u tlett SIEGĦAT)
|
||||
| Num11_19 -- 11..19, 111... (ħdax-il SIEGĦA, mija u dsatax-il SIEGĦA)
|
||||
| Num20_99 -- 20..99, 120... (għoxrin SIEGĦA, disa' u disgħajn SIEGĦA)
|
||||
;
|
||||
|
||||
NumCase =
|
||||
@@ -102,8 +99,9 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
s : Gender => Str ;
|
||||
n : NumForm ;
|
||||
clitic : Str ;
|
||||
hasNum : Bool ;
|
||||
isPron : Bool ;
|
||||
hasNum : Bool ; -- has a numeral
|
||||
isPron : Bool ; -- is a pronoun
|
||||
isDefn : Bool ; -- is definite
|
||||
} ;
|
||||
-- Determiner = {
|
||||
-- s : NPCase => Gender => NumCase => Str ;
|
||||
@@ -120,6 +118,7 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
clitic : Str ;
|
||||
isPron : Bool ;
|
||||
isDemo : Bool ; -- Demonstrative (this/that/those/these)
|
||||
isDefn : Bool ; -- is definite
|
||||
} ;
|
||||
-- Quantifier = {
|
||||
-- s : NPCase => Gender => NumForm => Str ;
|
||||
@@ -149,21 +148,15 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
s : NPCase => Str ;
|
||||
a : Agr ;
|
||||
isPron : Bool ;
|
||||
isDefn : Bool ;
|
||||
} ;
|
||||
|
||||
param
|
||||
Noun_Sg_Type =
|
||||
Singulative -- eg ĦUTA
|
||||
| Collective -- eg ĦUT
|
||||
;
|
||||
Noun_Pl_Type =
|
||||
Determinate -- eg ĦUTIET
|
||||
| Indeterminate -- eg ĦWIET
|
||||
;
|
||||
Noun_Number =
|
||||
Singular Noun_Sg_Type -- eg ĦUTA / ĦUT
|
||||
| Dual -- eg WIDNEJN
|
||||
| Plural Noun_Pl_Type -- eg ĦUTIET / ĦWIET
|
||||
Singulative -- ĦUTA
|
||||
| Collective -- ĦUT
|
||||
| Dual -- WIDNEJN
|
||||
| Plural -- ĦUTIET
|
||||
;
|
||||
|
||||
{- Pronoun -------------------------------------------------------------- -}
|
||||
@@ -198,13 +191,13 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
|
||||
VerbInfo : Type = {
|
||||
class : VClass ;
|
||||
form : VDerivedForm ;
|
||||
root : Root ; -- radicals
|
||||
patt : Pattern ; -- vowels extracted from mamma
|
||||
patt2: Pattern ; -- vowel changes; default to patt (experimental)
|
||||
form : VDerivedForm ;
|
||||
root : Root ; -- radicals
|
||||
patt : Pattern ; -- vowels extracted from mamma
|
||||
patt2 : Pattern ; -- vowel changes; default to patt (experimental)
|
||||
-- in particular, patt2 is used to indicate whether an IE sould be shortened
|
||||
-- to an I or an E (same for entire verb)
|
||||
imp : Str ; -- Imperative Sg. Gives so much information jaħasra!
|
||||
imp : Str ; -- Imperative Sg. Gives so much information jaħasra!
|
||||
} ;
|
||||
|
||||
param
|
||||
@@ -212,7 +205,7 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
VForm =
|
||||
VPerf VAgr -- Perfect tense in all pronoun cases
|
||||
| VImpf VAgr -- Imperfect tense in all pronoun cases
|
||||
| VImp Number -- Imperative is always P2, Sg & Pl
|
||||
| VImp Number -- Imperative is always P2, Sg & Pl
|
||||
-- | VPresPart GenNum -- Present Particible for Gender/Number
|
||||
-- | VPastPart GenNum -- Past Particible for Gender/Number
|
||||
-- | VVerbalNoun -- Verbal Noun
|
||||
@@ -292,22 +285,22 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
|
||||
copula_kien = {
|
||||
s : (VForm => Str) = table {
|
||||
VPerf (AgP1 Sg) => "kont" ;
|
||||
VPerf (AgP2 Sg) => "kont" ;
|
||||
VPerf (AgP1 Sg) => "kont" ;
|
||||
VPerf (AgP2 Sg) => "kont" ;
|
||||
VPerf (AgP3Sg Masc) => "kien" ;
|
||||
VPerf (AgP3Sg Fem) => "kienet" ;
|
||||
VPerf (AgP1 Pl) => "konna" ;
|
||||
VPerf (AgP2 Pl) => "kontu" ;
|
||||
VPerf (AgP3Pl) => "kienu" ;
|
||||
VImpf (AgP1 Sg) => "nkun" ;
|
||||
VImpf (AgP2 Sg) => "tkun" ;
|
||||
VPerf (AgP3Sg Fem) => "kienet" ;
|
||||
VPerf (AgP1 Pl) => "konna" ;
|
||||
VPerf (AgP2 Pl) => "kontu" ;
|
||||
VPerf (AgP3Pl) => "kienu" ;
|
||||
VImpf (AgP1 Sg) => "nkun" ;
|
||||
VImpf (AgP2 Sg) => "tkun" ;
|
||||
VImpf (AgP3Sg Masc) => "jkun" ;
|
||||
VImpf (AgP3Sg Fem) => "tkun" ;
|
||||
VImpf (AgP1 Pl) => "nkunu" ;
|
||||
VImpf (AgP2 Pl) => "tkunu" ;
|
||||
VImpf (AgP3Pl) => "jkunu" ;
|
||||
VImp (Pl) => "kun" ;
|
||||
VImp (Sg) => "kunu"
|
||||
VImpf (AgP3Sg Fem) => "tkun" ;
|
||||
VImpf (AgP1 Pl) => "nkunu" ;
|
||||
VImpf (AgP2 Pl) => "tkunu" ;
|
||||
VImpf (AgP3Pl) => "jkunu" ;
|
||||
VImp (Pl) => "kun" ;
|
||||
VImp (Sg) => "kunu"
|
||||
} ;
|
||||
i : VerbInfo = mkVerbInfo (Irregular) (FormI) (mkRoot "k-w-n") (mkPattern "ie") ;
|
||||
} ;
|
||||
@@ -367,18 +360,19 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
-- a2 = [] ;
|
||||
} ;
|
||||
|
||||
{- Adjective ------------------------------------------------------------ -}
|
||||
{- Adjecive ------------------------------------------------------------ -}
|
||||
|
||||
oper
|
||||
Adjective : Type = {
|
||||
s : AForm => Str ;
|
||||
hasComp : Bool ;
|
||||
} ;
|
||||
|
||||
param
|
||||
AForm =
|
||||
APosit GenNum
|
||||
| ACompar
|
||||
| ASuperl
|
||||
APosit GenNum -- Positive, e.g. SABIĦ
|
||||
| ACompar -- Comparative, e.g. ISBAĦ
|
||||
| ASuperl -- Superlative, e.g. L-ISBAĦ
|
||||
;
|
||||
|
||||
{- Other ---------------------------------------------------------------- -}
|
||||
@@ -387,19 +381,19 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
|
||||
{- ~~~ Some character classes ~~~ -}
|
||||
|
||||
Letter : pattern Str = #( "a" | "b" | "ċ" | "d" | "e" | "f" | "ġ" | "g" | "għ" | "h" | "ħ" | "i" | "ie" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" | "ż" | "z" );
|
||||
Consonant : pattern Str = #( "b" | "ċ" | "d" | "f" | "ġ" | "g" | "għ" | "h" | "ħ" | "j" | "k" | "l" | "m" | "n" | "p" | "q" | "r" | "s" | "t" | "v" | "w" | "x" | "ż" | "z" );
|
||||
CoronalCons : pattern Str = #( "ċ" | "d" | "n" | "r" | "s" | "t" | "x" | "ż" | "z" ); -- "konsonanti xemxin"
|
||||
LiquidCons : pattern Str = #( "l" | "m" | "n" | "r" | "għ" );
|
||||
SonorantCons : pattern Str = #( "l" | "m" | "n" | "r" ); -- See {SA pg13}. Currently unused, but see DoublingConsN below
|
||||
Letter : pattern Str = #( "a" | "b" | "ċ" | "d" | "e" | "f" | "ġ" | "g" | "għ" | "h" | "ħ" | "i" | "ie" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" | "ż" | "z" );
|
||||
Consonant : pattern Str = #( "b" | "ċ" | "d" | "f" | "ġ" | "g" | "għ" | "h" | "ħ" | "j" | "k" | "l" | "m" | "n" | "p" | "q" | "r" | "s" | "t" | "v" | "w" | "x" | "ż" | "z" );
|
||||
CoronalCons : pattern Str = #( "ċ" | "d" | "n" | "r" | "s" | "t" | "x" | "ż" | "z" ); -- "konsonanti xemxin"
|
||||
LiquidCons : pattern Str = #( "l" | "m" | "n" | "r" | "għ" );
|
||||
SonorantCons : pattern Str = #( "l" | "m" | "n" | "r" ); -- See {SA pg13}. Currently unused, but see DoublingConsN below
|
||||
DoublingConsT : pattern Str = #( "ċ" | "d" | "ġ" | "s" | "x" | "ż" | "z" ); -- require doubling when prefixed with 't', eg DDUM, ĠĠORR, SSIB, TTIR, ŻŻID {GM pg68,2b} {OM pg90}
|
||||
DoublingConsN : pattern Str = #( "l" | "m" | "r" ); -- require doubling when prefixed with 'n', eg LLAĦĦAQ, MMUR, RRID {OM pg90}
|
||||
StrongCons : pattern Str = #( "b" | "ċ" | "d" | "f" | "ġ" | "g" | "għ" | "h" | "ħ" | "k" | "l" | "m" | "n" | "p" | "q" | "r" | "s" | "t" | "v" | "x" | "ż" | "z" );
|
||||
WeakCons : pattern Str = #( "j" | "w" );
|
||||
Vowel : pattern Str = #( "a" | "e" | "i" | "o" | "u" );
|
||||
VowelIE : pattern Str = #( "a" | "e" | "i" | "ie" | "o" | "u" );
|
||||
Digraph : pattern Str = #( "ie" );
|
||||
SemiVowel : pattern Str = #( "għ" | "j" );
|
||||
StrongCons : pattern Str = #( "b" | "ċ" | "d" | "f" | "ġ" | "g" | "għ" | "h" | "ħ" | "k" | "l" | "m" | "n" | "p" | "q" | "r" | "s" | "t" | "v" | "x" | "ż" | "z" );
|
||||
WeakCons : pattern Str = #( "j" | "w" );
|
||||
Vowel : pattern Str = #( "a" | "e" | "i" | "o" | "u" );
|
||||
VowelIE : pattern Str = #( "a" | "e" | "i" | "ie" | "o" | "u" );
|
||||
Digraph : pattern Str = #( "ie" );
|
||||
SemiVowel : pattern Str = #( "għ" | "j" );
|
||||
|
||||
Vwl = Vowel ;
|
||||
Cns = Consonant ;
|
||||
@@ -446,13 +440,13 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
--- potentially slow
|
||||
extractPattern : Str -> Pattern = \s ->
|
||||
case s of {
|
||||
v1@"ie" + _ + v2@#Vowel + _ => mkPattern v1 v2 ; -- IEQAF
|
||||
v1@#Vowel + _ + v2@#Vowel + _ => mkPattern v1 v2 ; -- IKTEB
|
||||
_ + v1@"ie" + _ + v2@#Vowel + _ => mkPattern v1 v2 ; -- RIEQED
|
||||
_ + v1@"ie" + _ => mkPattern v1 ; -- ŻIED
|
||||
v1@"ie" + _ + v2@#Vowel + _ => mkPattern v1 v2 ; -- IEQAF
|
||||
v1@#Vowel + _ + v2@#Vowel + _ => mkPattern v1 v2 ; -- IKTEB
|
||||
_ + v1@"ie" + _ + v2@#Vowel + _ => mkPattern v1 v2 ; -- RIEQED
|
||||
_ + v1@"ie" + _ => mkPattern v1 ; -- ŻIED
|
||||
_ + v1@#Vowel + _ + v2@#Vowel + _ => mkPattern v1 v2 ; -- ĦARBAT
|
||||
_ + v1@#Vowel + _ => mkPattern v1 ; -- ĦOBB
|
||||
_ => mkPattern
|
||||
_ + v1@#Vowel + _ => mkPattern v1 ; -- ĦOBB
|
||||
_ => mkPattern
|
||||
} ;
|
||||
|
||||
-- Create a VerbInfo record, optionally omitting various fields
|
||||
@@ -491,20 +485,19 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
|
||||
numform2nounnum : NumForm -> Noun_Number = \n ->
|
||||
case n of {
|
||||
Num Sg => Singular Singulative ;
|
||||
Num Pl => Plural Indeterminate ;
|
||||
Num0 => Singular Singulative ;
|
||||
Num1 => Singular Singulative ;
|
||||
NumX Sg => Singulative ;
|
||||
NumX Pl => Plural ;
|
||||
Num0 => Singulative ;
|
||||
Num1 => Singulative ;
|
||||
Num2 => Dual ;
|
||||
Num3_10 => Singular Collective ;
|
||||
Num11_19 => Singular Singulative ;
|
||||
Num20_99 => Plural Indeterminate
|
||||
Num3_10 => Collective ;
|
||||
Num11_19 => Singulative ;
|
||||
Num20_99 => Plural
|
||||
} ;
|
||||
|
||||
{- ~~~ Useful helper functions ~~~ -}
|
||||
|
||||
-- Non-existant form
|
||||
--- If changed, also see: MorphoMlt.verbPolarityTable
|
||||
noexist : Str = "NOEXIST" ;
|
||||
|
||||
-- New names for the drop/take operations
|
||||
@@ -602,54 +595,52 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
_ => False
|
||||
} ;
|
||||
|
||||
|
||||
-- Add a definite preposition in front of your token
|
||||
addDefinitePreposition : Str -> Str -> Str = \prep,n -> (getDefinitePreposition prep n) ++ n ;
|
||||
addDefiniteArticle = addDefinitePreposition "il" ;
|
||||
getDefiniteArticle = getDefinitePreposition "il" ;
|
||||
|
||||
-- Correctly inflect definite preposition
|
||||
-- A more generic version of getDefiniteArticle
|
||||
-- Params:
|
||||
-- preposition (eg TAL, MAL, BĦALL)
|
||||
-- noun
|
||||
-- NOTE trying to call this with a runtime string will cause a world of pain. Design around it.
|
||||
getDefinitePreposition : Str -> Str -> Str = \prep,noun ->
|
||||
let
|
||||
-- Remove either 1 or 2 l's
|
||||
prepStem : Str = case prep of {
|
||||
_ + "ll" => Predef.tk 2 prep ;
|
||||
_ + "l" => Predef.tk 1 prep ;
|
||||
_ => prep -- this should never happen, I don't think
|
||||
}
|
||||
in
|
||||
case noun of {
|
||||
("s"|#LiquidCons) + #Consonant + _ => prep + "-i" ; -- L-ISKOLA
|
||||
("għ" | #Vowel) + _ => case prep of { -- L-GĦATBA...
|
||||
("fil"|"bil") => (Predef.take 1 prep) + "l-" ;
|
||||
"il" => "l" + "-" ;
|
||||
_ => prep + "-"
|
||||
};
|
||||
K@#CoronalCons + _ => prepStem + K + "-" ; -- IĊ-ĊISK
|
||||
#Consonant + _ => prep + "-" ; -- IL-QADDIS
|
||||
_ => [] -- ?
|
||||
} ;
|
||||
|
||||
artIndef : Str = "" ;
|
||||
|
||||
artDef : Str =
|
||||
makePreFull
|
||||
"il-" -- il-ktieb
|
||||
"i" -- it-triq
|
||||
"l-" -- l-ajruplan
|
||||
;
|
||||
|
||||
-- Make a pre string which only varies for vowels
|
||||
makePreVowel : Str -> Str -> Str = \cons,vowel ->
|
||||
let
|
||||
vowel' : Str = case vowel of {
|
||||
_ + "'" => vowel ++ BIND ;
|
||||
_ => vowel
|
||||
} ;
|
||||
in
|
||||
pre {
|
||||
"il- &+" ; --- ugly hack! but won't let me use ++
|
||||
"l-" ++ BIND / strs { "a" ; "e" ; "i" ; "o" ; "u" ; "h" ; "għ" } ;
|
||||
"iċ-" ++ BIND / strs { "ċ" } ;
|
||||
"id-" ++ BIND / strs { "d" } ;
|
||||
"in-" ++ BIND / strs { "n" } ;
|
||||
"ir-" ++ BIND / strs { "r" } ;
|
||||
"is-" ++ BIND / strs { "s" } ;
|
||||
"it-" ++ BIND / strs { "t" } ;
|
||||
"ix-" ++ BIND / strs { "x" } ;
|
||||
"iż-" ++ BIND / strs { "ż" } ;
|
||||
"iz-" ++ BIND / strs { "z" }
|
||||
-- Consonant
|
||||
cons ;
|
||||
-- Vowel
|
||||
vowel' / strs { "a" ; "e" ; "i" ; "o" ; "u" ; "h" ; "għ" }
|
||||
} ;
|
||||
|
||||
-- Make a pre string which varies coronal consonants and vowels
|
||||
makePreFull : Str -> Str -> Str -> Str = \cons,corcons,vowel ->
|
||||
let
|
||||
mal = cons ++ BIND ;
|
||||
m' = vowel ++ BIND ;
|
||||
ma = corcons ;
|
||||
in
|
||||
pre {
|
||||
-- Regular consonant
|
||||
mal ;
|
||||
-- Vowel
|
||||
m' / strs { "a" ; "e" ; "i" ; "o" ; "u" ; "h" ; "għ" } ;
|
||||
-- Coronal consonants
|
||||
ma+"ċ-" ++ BIND / strs { "ċ" } ;
|
||||
ma+"d-" ++ BIND / strs { "d" } ;
|
||||
ma+"n-" ++ BIND / strs { "n" } ;
|
||||
ma+"r-" ++ BIND / strs { "r" } ;
|
||||
ma+"s-" ++ BIND / strs { "s" } ;
|
||||
ma+"t-" ++ BIND / strs { "t" } ;
|
||||
ma+"x-" ++ BIND / strs { "x" } ;
|
||||
ma+"ż-" ++ BIND / strs { "ż" } ;
|
||||
ma+"z-" ++ BIND / strs { "z" }
|
||||
} ;
|
||||
|
||||
{- ~~~ Worst-case functions ~~~ -}
|
||||
@@ -664,11 +655,11 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
-- Gender
|
||||
mkNoun : (_,_,_,_,_ : Str) -> Gender -> Noun = \sing,coll,dual,det,ind,gen -> {
|
||||
s = table {
|
||||
Singular Singulative => sing ;
|
||||
Singular Collective => coll ;
|
||||
Dual => dual ;
|
||||
Plural Determinate => det ;
|
||||
Plural Indeterminate => ind
|
||||
Singulative => sing ;
|
||||
Collective => coll ;
|
||||
Dual => dual ;
|
||||
Plural => if_then_Str (isNil det) ind det
|
||||
-- Plural => variants {det ; ind}
|
||||
} ;
|
||||
g = gen ;
|
||||
takesPron = False ;
|
||||
@@ -687,12 +678,13 @@ resource ResMlt = ParamX ** open Prelude, Predef in {
|
||||
s = table {
|
||||
APosit gn => case gn of {
|
||||
GSg Masc => masc ;
|
||||
GSg Fem => fem ;
|
||||
GPl => plural
|
||||
GSg Fem => fem ;
|
||||
GPl => plural
|
||||
} ;
|
||||
ACompar => compar ;
|
||||
ASuperl => addDefiniteArticle compar
|
||||
ASuperl => artDef ++ compar
|
||||
} ;
|
||||
hasComp = notB (isNil compar) ;
|
||||
} ;
|
||||
|
||||
}
|
||||
|
||||
@@ -33,6 +33,11 @@ concrete SentenceMlt of Sentence = CatMlt ** open
|
||||
} ;
|
||||
} ;
|
||||
|
||||
-- Temp -> Polarity -> Cl -> S
|
||||
UseCl t p cl = {
|
||||
s = t.s ++ p.s ++ cl.s ! t.t ! t.a ! p.p
|
||||
} ;
|
||||
|
||||
-- Cl
|
||||
-- Imp
|
||||
-- QS
|
||||
|
||||
@@ -47,23 +47,48 @@ concrete StructuralMlt of Structural = CatMlt **
|
||||
|
||||
-- which_IQuant = {s = \\_ => "which"} ;
|
||||
|
||||
{- Conjunction ---------------------------------------------------------- -}
|
||||
|
||||
and_Conj = mkConj "u" ;
|
||||
both7and_DConj = mkConj "kemm" "u";
|
||||
but_PConj = ss "imma" ;
|
||||
either7or_DConj = mkConj "jew" "inkella" ;
|
||||
or_Conj = mkConj "jew" ;
|
||||
otherwise_PConj = ss "inkella" ;
|
||||
therefore_PConj = ss "allura" ;
|
||||
if_then_Conj = mkConj "jekk" ;
|
||||
|
||||
{- Preposition ---------------------------------------------------------- -}
|
||||
|
||||
above_Prep = mkPrep "fuq" ;
|
||||
after_Prep = mkPrep "wara" ;
|
||||
before_Prep = mkPrep "qabel" ;
|
||||
behind_Prep = mkPrep "wara" ;
|
||||
between_Prep = mkPrep "bejn" ;
|
||||
by8agent_Prep = mkPrep "minn" "mill-" "mit-" ;
|
||||
by8means_Prep = mkPrep "bi" "b'" "bil-" "bit-" "bl-" ;
|
||||
during_Prep = mkPrep "waqt" ;
|
||||
for_Prep = mkPrep "għal" "għall-" "għat-" ;
|
||||
from_Prep = mkPrep "minn" "mill-" "mit-" ;
|
||||
in8front_Prep = mkPrep "quddiem" ;
|
||||
in_Prep = mkPrep "fi" "f'" "fil-" "fit-" "fl-" ;
|
||||
on_Prep = mkPrep "fuq" ;
|
||||
part_Prep = mkPrep "ta'" "t'" "tal-" "tat-" "tal-" ;
|
||||
possess_Prep = mkPrep "ta'" "t'" "tal-" "tat-" "tal-" ;
|
||||
through_Prep = mkPrep "ġo" "ġol-" "ġot-" ;
|
||||
to_Prep = mkPrep "lil" "lill-" "lit-" ;
|
||||
under_Prep = mkPrep "taħt" ;
|
||||
without_Prep = mkPrep "mingħajr" ;
|
||||
with_Prep = mkPrep "ma'" "m'" "mal-" "mat-" "mal-" ;
|
||||
except_Prep = mkPrep "apparti" ;
|
||||
|
||||
{- Others --------------------------------------------------------------- -}
|
||||
|
||||
-- above_Prep = mkPrep "above" ;
|
||||
-- after_Prep = mkPrep "after" ;
|
||||
-- almost_AdA = mkAdA "almost" ;
|
||||
-- almost_AdN = mkAdN "almost" ;
|
||||
-- although_Subj = ss "although" ;
|
||||
-- always_AdV = mkAdV "always" ;
|
||||
-- and_Conj = mkConj "and" ;
|
||||
-- because_Subj = ss "because" ;
|
||||
-- before_Prep = mkPrep "before" ;
|
||||
-- behind_Prep = mkPrep "behind" ;
|
||||
-- between_Prep = mkPrep "between" ;
|
||||
-- both7and_DConj = mkConj "both" "and";
|
||||
-- but_PConj = ss "but" ;
|
||||
-- by8agent_Prep = mkPrep "by" ;
|
||||
-- by8means_Prep = mkPrep "by" ;
|
||||
-- can8know_VV, can_VV = {
|
||||
-- s = table {
|
||||
-- VVF VInf => ["be able to"] ;
|
||||
@@ -76,13 +101,9 @@ concrete StructuralMlt of Structural = CatMlt **
|
||||
-- } ;
|
||||
-- typ = VVAux
|
||||
-- } ;
|
||||
-- during_Prep = mkPrep "during" ;
|
||||
-- either7or_DConj = mkConj "either" "or" singular ;
|
||||
-- everybody_NP = regNP "everybody" singular ;
|
||||
-- everything_NP = regNP "everything" singular ;
|
||||
-- everywhere_Adv = mkAdv "everywhere" ;
|
||||
-- for_Prep = mkPrep "for" ;
|
||||
-- from_Prep = mkPrep "from" ;
|
||||
-- here_Adv = mkAdv "here" ;
|
||||
-- here7to_Adv = mkAdv ["to here"] ;
|
||||
-- here7from_Adv = mkAdv ["from here"] ;
|
||||
@@ -90,8 +111,6 @@ concrete StructuralMlt of Structural = CatMlt **
|
||||
-- how8much_IAdv = ss "how much" ;
|
||||
-- how8many_IDet = mkDeterminer plural ["how many"] ;
|
||||
-- if_Subj = ss "if" ;
|
||||
-- in8front_Prep = mkPrep ["in front of"] ;
|
||||
-- in_Prep = mkPrep "in" ;
|
||||
-- less_CAdv = C.mkCAdv "less" "than" ;
|
||||
-- more_CAdv = C.mkCAdv "more" "than" ;
|
||||
-- most_Predet = ss "most" ;
|
||||
@@ -108,12 +127,7 @@ concrete StructuralMlt of Structural = CatMlt **
|
||||
-- typ = VVAux
|
||||
-- } ;
|
||||
-- no_Utt = ss "no" ;
|
||||
-- on_Prep = mkPrep "on" ;
|
||||
-- or_Conj = mkConj "or" singular ;
|
||||
-- otherwise_PConj = ss "otherwise" ;
|
||||
-- part_Prep = mkPrep "of" ;
|
||||
-- please_Voc = ss "please" ;
|
||||
-- possess_Prep = mkPrep "of" ;
|
||||
-- quite_Adv = mkAdv "quite" ;
|
||||
-- so_AdA = mkAdA "so" ;
|
||||
-- somebody_NP = regNP "somebody" singular ;
|
||||
@@ -122,11 +136,7 @@ concrete StructuralMlt of Structural = CatMlt **
|
||||
-- there_Adv = mkAdv "there" ;
|
||||
-- there7to_Adv = mkAdv "there" ;
|
||||
-- there7from_Adv = mkAdv ["from there"] ;
|
||||
-- therefore_PConj = ss "therefore" ;
|
||||
-- through_Prep = mkPrep "through" ;
|
||||
-- too_AdA = mkAdA "too" ;
|
||||
-- to_Prep = mkPrep "to" ;
|
||||
-- under_Prep = mkPrep "under" ;
|
||||
-- very_AdA = mkAdA "very" ;
|
||||
-- want_VV = mkVV (regV "want") ;
|
||||
-- whatPl_IP = mkIP "what" "what" "what's" plural ;
|
||||
@@ -137,22 +147,24 @@ concrete StructuralMlt of Structural = CatMlt **
|
||||
-- whoPl_IP = mkIP "who" "whom" "whose" plural ;
|
||||
-- whoSg_IP = mkIP "who" "whom" "whose" singular ;
|
||||
-- why_IAdv = ss "why" ;
|
||||
-- without_Prep = mkPrep "without" ;
|
||||
-- with_Prep = mkPrep "with" ;
|
||||
-- yes_Utt = ss "yes" ;
|
||||
|
||||
-- if_then_Conj = mkConj "if" "then" singular ;
|
||||
-- nobody_NP = regNP "nobody" singular ;
|
||||
-- nothing_NP = regNP "nothing" singular ;
|
||||
|
||||
-- at_least_AdN = mkAdN "at least" ;
|
||||
-- at_most_AdN = mkAdN "at most" ;
|
||||
|
||||
-- except_Prep = mkPrep "except" ;
|
||||
|
||||
-- as_CAdv = C.mkCAdv "as" "as" ;
|
||||
|
||||
-- have_V2 = dirV2 (mk5V "have" "has" "had" "had" "having") ;
|
||||
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"
|
||||
) ;
|
||||
|
||||
-- that_Subj = ss "that" ;
|
||||
|
||||
lin language_title_Utt = ss "Malti" ;
|
||||
|
||||
@@ -30,8 +30,10 @@ concrete VerbMlt of Verb = CatMlt ** open Prelude, ResMlt in {
|
||||
_ => insertObj (\\agr => np.s ! CPrep) vp
|
||||
} ;
|
||||
|
||||
-- Comp
|
||||
-- VP
|
||||
-- VPSplash
|
||||
-- VP -> Adv -> VP
|
||||
AdvVP vp adv = insertObj (\\_ => adv.s) vp ;
|
||||
|
||||
-- AdV -> VP -> VP
|
||||
-- AdVVP adv vp = insertAdV adv.s vp ;
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user