mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-09 04:59:31 -06:00
Maltese RG: make pro-drop explicit. Other small fixes in Structural, Lexicon.
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
|
||||
concrete AllMlt of AllMltAbs =
|
||||
LangMlt,
|
||||
DictMlt,
|
||||
IrregMlt,
|
||||
ExtraMlt
|
||||
** {
|
||||
|
||||
@@ -8,12 +8,7 @@
|
||||
|
||||
abstract AllMltAbs =
|
||||
Lang,
|
||||
DictMltAbs,
|
||||
IrregMltAbs,
|
||||
ExtraMltAbs
|
||||
** {} ;
|
||||
|
||||
{-
|
||||
IrregMltAbs-[
|
||||
blow_V,burn_V,come_V,dig_V,fall_V,fly_V,freeze_V,go_V,lie_V,run_V,
|
||||
sew_V,sing_V,sit_V,sleep_V,spit_V,stand_V,swell_V,swim_V,think_V],
|
||||
-}
|
||||
|
||||
@@ -97,7 +97,7 @@ concrete CatMlt of Cat = CommonX - [Adv] ** open ResMlt, Prelude in {
|
||||
s : NumCase => Str ; -- No need for CardOrd, i.e. no 1st, 2nd etc in Maltese
|
||||
n : NumForm ;
|
||||
tail : DTail ;
|
||||
};
|
||||
} ;
|
||||
|
||||
-- Structural
|
||||
|
||||
|
||||
@@ -648,7 +648,6 @@ concrete DictMlt of DictMltAbs = CatMlt ** open ParadigmsMlt in {
|
||||
tentex_TNTX_1_7299_V = mkV "tentex" (mkRoot "t-n-t-x") ;
|
||||
ttentex_TNTX_2_7300_V = mkV_II "ttentex" (mkRoot "t-n-t-x") ;
|
||||
taptap_TPTP_1_7301_V = mkV "taptap" (mkRoot "t-p-t-p") ;
|
||||
staqsa_TPTP_1_7302_V = mkV "staqsa" (mkRoot "t-p-t-p") ;
|
||||
volga_VLGJ_1_7303_V = mkV "volġa" (mkRoot "v-l-ġ-j") ;
|
||||
vilja_VLJJ_1_7304_V = mkV "vilja" (mkRoot "v-l-j-j") ;
|
||||
vilja_VLJJ_1_7305_V = mkV "vilja" (mkRoot "v-l-j-j") ;
|
||||
|
||||
@@ -624,7 +624,6 @@ abstract DictMltAbs = Cat ** {
|
||||
tentex_TNTX_1_7299_V : V ;
|
||||
ttentex_TNTX_2_7300_V : V ;
|
||||
taptap_TPTP_1_7301_V : V ;
|
||||
staqsa_TPTP_1_7302_V : V ;
|
||||
volga_VLGJ_1_7303_V : V ;
|
||||
vilja_VLJJ_1_7304_V : V ;
|
||||
vilja_VLJJ_1_7305_V : V ;
|
||||
|
||||
@@ -5,8 +5,23 @@
|
||||
-- Licensed under LGPL
|
||||
|
||||
concrete ExtraMlt of ExtraMltAbs = CatMlt **
|
||||
open ResMlt, ParadigmsMlt in {
|
||||
open (R=ResMlt), ParadigmsMlt in {
|
||||
|
||||
flags coding=utf8 ;
|
||||
|
||||
lin
|
||||
SlashVa v = (R.predV v) ** { c2 = noCompl } ; -- See Verb.SlashV2a
|
||||
|
||||
-- VasV2 v = v ** { c2 = noCompl } ;
|
||||
|
||||
-- ProDrop : Pron -> Pron
|
||||
-- unstressed subject pronoun becomes []: "(jiena) norqod"
|
||||
ProDrop p = {
|
||||
s = table {
|
||||
R.Personal => [] ;
|
||||
c => p.s ! c
|
||||
} ;
|
||||
a = p.a ;
|
||||
} ;
|
||||
|
||||
}
|
||||
|
||||
@@ -4,6 +4,12 @@
|
||||
-- John J. Camilleri 2011 -- 2013
|
||||
-- Licensed under LGPL
|
||||
|
||||
abstract ExtraMltAbs = Cat ** {
|
||||
abstract ExtraMltAbs = Cat, Extra [Pron, ProDrop] ** {
|
||||
|
||||
fun
|
||||
-- SlashV2a : V2 -> VPSlash ; -- love (it)
|
||||
SlashVa : V -> VPSlash ; -- jump (it)
|
||||
|
||||
-- VasV2 : V -> V2 ; --- too general for my liking
|
||||
|
||||
}
|
||||
|
||||
@@ -58,7 +58,7 @@ concrete LexiconMlt of Lexicon = CatMlt **
|
||||
cousin_N = mkN "kuġin" "kuġini" ; -- genderedN
|
||||
cow_N = mkNColl "baqra" "baqar" "baqriet" ;
|
||||
day_N = mkN "ġurnata" "ġranet" ;
|
||||
distance_N3 = mkN3 (mkN "distanza") minnP saP ;
|
||||
distance_N3 = mkN3 (mkN "distanza") saP minnP ;
|
||||
doctor_N = mkN "tabib" "tobba" ; -- genderedN
|
||||
dog_N = mkN "kelb" "klieb" ;
|
||||
door_N = mkN "bieb" "bibien" ;
|
||||
@@ -257,7 +257,7 @@ concrete LexiconMlt of Lexicon = CatMlt **
|
||||
lose_V2 = lilV2 (tilef_TLF_1_9895_V) ;
|
||||
love_V2 = lilV2 (habb_HBB_1_8174_V) ;
|
||||
open_V2 = dirV2 (fetah_FTH_1_7932_V) ;
|
||||
paint_V2A = dirV2 (pitter_PTR_2_9152_V) ;
|
||||
paint_V2A = dirV2 (zeba'_ZBGH_1_10339_V) ; -- dirV2 (pitter_PTR_2_9152_V) ;
|
||||
play_V = daqq_DQQ_1_7736_V ;
|
||||
play_V2 = prepV2 (laghab_LGHB_1_8724_V) maP ;
|
||||
pull_V2 = lilV2 (gibed_GBD_1_8043_V) ;
|
||||
|
||||
@@ -1152,6 +1152,7 @@ resource ResMlt = ParamX ** open Prelude, Predef, Maybe in {
|
||||
{- ~~~ Useful helper functions ~~~ -}
|
||||
|
||||
NONEXIST : Str = "#NONEXIST#" ;
|
||||
-- NONEXIST : Str = Prelude.nonExist ; -- Still doesn't work in Haskell runtime 2013-08-26
|
||||
|
||||
-- New names for the drop/take operations
|
||||
takePfx = Predef.take ;
|
||||
@@ -1223,20 +1224,20 @@ resource ResMlt = ParamX ** open Prelude, Predef, Maybe in {
|
||||
|
||||
-- Is a word mono-syllabic?
|
||||
--- potentially slow
|
||||
isMonoSyl : Str -> Bool = \s ->
|
||||
case s of {
|
||||
#Consonant + ("ie" | #Vowel) => True ; -- ra
|
||||
#Consonant + #Consonant + ("ie" | #Vowel) => True ; -- bla
|
||||
-- isMonoSyl : Str -> Bool = \s ->
|
||||
-- case s of {
|
||||
-- #Consonant + ("ie" | #Vowel) => True ; -- ra
|
||||
-- #Consonant + #Consonant + ("ie" | #Vowel) => True ; -- bla
|
||||
|
||||
("ie" | #Vowel) + #Consonant => True ; -- af
|
||||
("ie" | #Vowel) + #Consonant + #Consonant => True ; -- elf
|
||||
-- ("ie" | #Vowel) + #Consonant => True ; -- af
|
||||
-- ("ie" | #Vowel) + #Consonant + #Consonant => True ; -- elf
|
||||
|
||||
#Consonant + ("ie" | #Vowel) + #Consonant => True ; -- miet
|
||||
#Consonant + ("ie" | #Vowel) + #Consonant + #Consonant => True ; -- mort
|
||||
#Consonant + #Consonant + ("ie" | #Vowel) + #Consonant => True ; -- ħliet
|
||||
#Consonant + #Consonant + ("ie" | #Vowel) + #Consonant + #Consonant => True ; -- ħriġt
|
||||
_ => False
|
||||
} ;
|
||||
-- #Consonant + ("ie" | #Vowel) + #Consonant => True ; -- miet
|
||||
-- #Consonant + ("ie" | #Vowel) + #Consonant + #Consonant => True ; -- mort
|
||||
-- #Consonant + #Consonant + ("ie" | #Vowel) + #Consonant => True ; -- ħliet
|
||||
-- #Consonant + #Consonant + ("ie" | #Vowel) + #Consonant + #Consonant => True ; -- ħriġt
|
||||
-- _ => False
|
||||
-- } ;
|
||||
|
||||
wiehed : Gender => Str =
|
||||
table {
|
||||
|
||||
@@ -19,10 +19,11 @@ concrete SentenceMlt of Sentence = CatMlt ** open
|
||||
-- John walks
|
||||
PredVP np vp =
|
||||
let
|
||||
subj : Str = case np.isPron of {
|
||||
True => [] ; -- omit subject pronouns
|
||||
False => np.s ! NPNom
|
||||
} ;
|
||||
-- subj : Str = case np.isPron of {
|
||||
-- True => [] ; -- omit subject pronouns
|
||||
-- False => np.s ! NPNom
|
||||
-- } ;
|
||||
subj : Str = np.s ! NPNom ;
|
||||
in
|
||||
mkClause subj np.a vp ;
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@ concrete StructuralMlt of Structural = CatMlt **
|
||||
{- Conjunction ---------------------------------------------------------- -}
|
||||
|
||||
and_Conj = mkConj "u" ;
|
||||
both7and_DConj = mkConj "kemm" "u";
|
||||
both7and_DConj = mkConj "kemm" "u kemm";
|
||||
but_PConj = ss "imma" ;
|
||||
either7or_DConj = mkConj "jew" "inkella" ;
|
||||
or_Conj = mkConj "jew" ;
|
||||
@@ -123,16 +123,16 @@ concrete StructuralMlt of Structural = CatMlt **
|
||||
at_most_AdN = mkAdN "l-iktar" ;
|
||||
everywhere_Adv = mkAdv "kullimkien" ;
|
||||
here_Adv = mkAdv "hawn" ;
|
||||
here7to_Adv = mkAdv ["s'hawnhekk"] ;
|
||||
here7from_Adv = mkAdv ["minn hawnhekk"] ;
|
||||
here7to_Adv = mkAdv ["s'hawn"] ;
|
||||
here7from_Adv = mkAdv ["minn hawn"] ;
|
||||
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"] ;
|
||||
there_Adv = mkAdv "hemm" ;
|
||||
there7to_Adv = mkAdv "s'hemm" ;
|
||||
there7from_Adv = mkAdv ["minn hemm"] ;
|
||||
too_AdA = mkAdA "ukoll" ;
|
||||
very_AdA = mkAdA "ħafna" ;
|
||||
as_CAdv = C.mkCAdv "" "daqs" ; -- "as good as gold"
|
||||
|
||||
Reference in New Issue
Block a user