mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-24 03:52:50 -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 =
|
concrete AllMlt of AllMltAbs =
|
||||||
LangMlt,
|
LangMlt,
|
||||||
|
DictMlt,
|
||||||
IrregMlt,
|
IrregMlt,
|
||||||
ExtraMlt
|
ExtraMlt
|
||||||
** {
|
** {
|
||||||
|
|||||||
@@ -8,12 +8,7 @@
|
|||||||
|
|
||||||
abstract AllMltAbs =
|
abstract AllMltAbs =
|
||||||
Lang,
|
Lang,
|
||||||
|
DictMltAbs,
|
||||||
IrregMltAbs,
|
IrregMltAbs,
|
||||||
ExtraMltAbs
|
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
|
s : NumCase => Str ; -- No need for CardOrd, i.e. no 1st, 2nd etc in Maltese
|
||||||
n : NumForm ;
|
n : NumForm ;
|
||||||
tail : DTail ;
|
tail : DTail ;
|
||||||
};
|
} ;
|
||||||
|
|
||||||
-- Structural
|
-- 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") ;
|
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") ;
|
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") ;
|
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") ;
|
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_7304_V = mkV "vilja" (mkRoot "v-l-j-j") ;
|
||||||
vilja_VLJJ_1_7305_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 ;
|
tentex_TNTX_1_7299_V : V ;
|
||||||
ttentex_TNTX_2_7300_V : V ;
|
ttentex_TNTX_2_7300_V : V ;
|
||||||
taptap_TPTP_1_7301_V : V ;
|
taptap_TPTP_1_7301_V : V ;
|
||||||
staqsa_TPTP_1_7302_V : V ;
|
|
||||||
volga_VLGJ_1_7303_V : V ;
|
volga_VLGJ_1_7303_V : V ;
|
||||||
vilja_VLJJ_1_7304_V : V ;
|
vilja_VLJJ_1_7304_V : V ;
|
||||||
vilja_VLJJ_1_7305_V : V ;
|
vilja_VLJJ_1_7305_V : V ;
|
||||||
|
|||||||
@@ -5,8 +5,23 @@
|
|||||||
-- Licensed under LGPL
|
-- Licensed under LGPL
|
||||||
|
|
||||||
concrete ExtraMlt of ExtraMltAbs = CatMlt **
|
concrete ExtraMlt of ExtraMltAbs = CatMlt **
|
||||||
open ResMlt, ParadigmsMlt in {
|
open (R=ResMlt), ParadigmsMlt in {
|
||||||
|
|
||||||
flags coding=utf8 ;
|
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
|
-- John J. Camilleri 2011 -- 2013
|
||||||
-- Licensed under LGPL
|
-- 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
|
cousin_N = mkN "kuġin" "kuġini" ; -- genderedN
|
||||||
cow_N = mkNColl "baqra" "baqar" "baqriet" ;
|
cow_N = mkNColl "baqra" "baqar" "baqriet" ;
|
||||||
day_N = mkN "ġurnata" "ġranet" ;
|
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
|
doctor_N = mkN "tabib" "tobba" ; -- genderedN
|
||||||
dog_N = mkN "kelb" "klieb" ;
|
dog_N = mkN "kelb" "klieb" ;
|
||||||
door_N = mkN "bieb" "bibien" ;
|
door_N = mkN "bieb" "bibien" ;
|
||||||
@@ -257,7 +257,7 @@ concrete LexiconMlt of Lexicon = CatMlt **
|
|||||||
lose_V2 = lilV2 (tilef_TLF_1_9895_V) ;
|
lose_V2 = lilV2 (tilef_TLF_1_9895_V) ;
|
||||||
love_V2 = lilV2 (habb_HBB_1_8174_V) ;
|
love_V2 = lilV2 (habb_HBB_1_8174_V) ;
|
||||||
open_V2 = dirV2 (fetah_FTH_1_7932_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_V = daqq_DQQ_1_7736_V ;
|
||||||
play_V2 = prepV2 (laghab_LGHB_1_8724_V) maP ;
|
play_V2 = prepV2 (laghab_LGHB_1_8724_V) maP ;
|
||||||
pull_V2 = lilV2 (gibed_GBD_1_8043_V) ;
|
pull_V2 = lilV2 (gibed_GBD_1_8043_V) ;
|
||||||
|
|||||||
@@ -1152,6 +1152,7 @@ resource ResMlt = ParamX ** open Prelude, Predef, Maybe in {
|
|||||||
{- ~~~ Useful helper functions ~~~ -}
|
{- ~~~ Useful helper functions ~~~ -}
|
||||||
|
|
||||||
NONEXIST : Str = "#NONEXIST#" ;
|
NONEXIST : Str = "#NONEXIST#" ;
|
||||||
|
-- NONEXIST : Str = Prelude.nonExist ; -- Still doesn't work in Haskell runtime 2013-08-26
|
||||||
|
|
||||||
-- New names for the drop/take operations
|
-- New names for the drop/take operations
|
||||||
takePfx = Predef.take ;
|
takePfx = Predef.take ;
|
||||||
@@ -1223,20 +1224,20 @@ resource ResMlt = ParamX ** open Prelude, Predef, Maybe in {
|
|||||||
|
|
||||||
-- Is a word mono-syllabic?
|
-- Is a word mono-syllabic?
|
||||||
--- potentially slow
|
--- potentially slow
|
||||||
isMonoSyl : Str -> Bool = \s ->
|
-- isMonoSyl : Str -> Bool = \s ->
|
||||||
case s of {
|
-- case s of {
|
||||||
#Consonant + ("ie" | #Vowel) => True ; -- ra
|
-- #Consonant + ("ie" | #Vowel) => True ; -- ra
|
||||||
#Consonant + #Consonant + ("ie" | #Vowel) => True ; -- bla
|
-- #Consonant + #Consonant + ("ie" | #Vowel) => True ; -- bla
|
||||||
|
|
||||||
("ie" | #Vowel) + #Consonant => True ; -- af
|
-- ("ie" | #Vowel) + #Consonant => True ; -- af
|
||||||
("ie" | #Vowel) + #Consonant + #Consonant => True ; -- elf
|
-- ("ie" | #Vowel) + #Consonant + #Consonant => True ; -- elf
|
||||||
|
|
||||||
#Consonant + ("ie" | #Vowel) + #Consonant => True ; -- miet
|
-- #Consonant + ("ie" | #Vowel) + #Consonant => True ; -- miet
|
||||||
#Consonant + ("ie" | #Vowel) + #Consonant + #Consonant => True ; -- mort
|
-- #Consonant + ("ie" | #Vowel) + #Consonant + #Consonant => True ; -- mort
|
||||||
#Consonant + #Consonant + ("ie" | #Vowel) + #Consonant => True ; -- ħliet
|
-- #Consonant + #Consonant + ("ie" | #Vowel) + #Consonant => True ; -- ħliet
|
||||||
#Consonant + #Consonant + ("ie" | #Vowel) + #Consonant + #Consonant => True ; -- ħriġt
|
-- #Consonant + #Consonant + ("ie" | #Vowel) + #Consonant + #Consonant => True ; -- ħriġt
|
||||||
_ => False
|
-- _ => False
|
||||||
} ;
|
-- } ;
|
||||||
|
|
||||||
wiehed : Gender => Str =
|
wiehed : Gender => Str =
|
||||||
table {
|
table {
|
||||||
|
|||||||
@@ -19,10 +19,11 @@ concrete SentenceMlt of Sentence = CatMlt ** open
|
|||||||
-- John walks
|
-- John walks
|
||||||
PredVP np vp =
|
PredVP np vp =
|
||||||
let
|
let
|
||||||
subj : Str = case np.isPron of {
|
-- subj : Str = case np.isPron of {
|
||||||
True => [] ; -- omit subject pronouns
|
-- True => [] ; -- omit subject pronouns
|
||||||
False => np.s ! NPNom
|
-- False => np.s ! NPNom
|
||||||
} ;
|
-- } ;
|
||||||
|
subj : Str = np.s ! NPNom ;
|
||||||
in
|
in
|
||||||
mkClause subj np.a vp ;
|
mkClause subj np.a vp ;
|
||||||
|
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ concrete StructuralMlt of Structural = CatMlt **
|
|||||||
{- Conjunction ---------------------------------------------------------- -}
|
{- Conjunction ---------------------------------------------------------- -}
|
||||||
|
|
||||||
and_Conj = mkConj "u" ;
|
and_Conj = mkConj "u" ;
|
||||||
both7and_DConj = mkConj "kemm" "u";
|
both7and_DConj = mkConj "kemm" "u kemm";
|
||||||
but_PConj = ss "imma" ;
|
but_PConj = ss "imma" ;
|
||||||
either7or_DConj = mkConj "jew" "inkella" ;
|
either7or_DConj = mkConj "jew" "inkella" ;
|
||||||
or_Conj = mkConj "jew" ;
|
or_Conj = mkConj "jew" ;
|
||||||
@@ -123,16 +123,16 @@ concrete StructuralMlt of Structural = CatMlt **
|
|||||||
at_most_AdN = mkAdN "l-iktar" ;
|
at_most_AdN = mkAdN "l-iktar" ;
|
||||||
everywhere_Adv = mkAdv "kullimkien" ;
|
everywhere_Adv = mkAdv "kullimkien" ;
|
||||||
here_Adv = mkAdv "hawn" ;
|
here_Adv = mkAdv "hawn" ;
|
||||||
here7to_Adv = mkAdv ["s'hawnhekk"] ;
|
here7to_Adv = mkAdv ["s'hawn"] ;
|
||||||
here7from_Adv = mkAdv ["minn hawnhekk"] ;
|
here7from_Adv = mkAdv ["minn hawn"] ;
|
||||||
less_CAdv = C.mkCAdv "inqas" "minn" ; --- inqas mill-ieħor
|
less_CAdv = C.mkCAdv "inqas" "minn" ; --- inqas mill-ieħor
|
||||||
more_CAdv = C.mkCAdv "iktar" "minn" ; --- iktar mit-tnejn
|
more_CAdv = C.mkCAdv "iktar" "minn" ; --- iktar mit-tnejn
|
||||||
quite_Adv = mkAdv "pjuttost" ;
|
quite_Adv = mkAdv "pjuttost" ;
|
||||||
so_AdA = mkAdA "allura" ;
|
so_AdA = mkAdA "allura" ;
|
||||||
somewhere_Adv = mkAdv "x'imkien" ;
|
somewhere_Adv = mkAdv "x'imkien" ;
|
||||||
there_Adv = mkAdv "hemmhekk" ;
|
there_Adv = mkAdv "hemm" ;
|
||||||
there7to_Adv = mkAdv "s'hemmhekk" ;
|
there7to_Adv = mkAdv "s'hemm" ;
|
||||||
there7from_Adv = mkAdv ["minn hemmhekk"] ;
|
there7from_Adv = mkAdv ["minn hemm"] ;
|
||||||
too_AdA = mkAdA "ukoll" ;
|
too_AdA = mkAdA "ukoll" ;
|
||||||
very_AdA = mkAdA "ħafna" ;
|
very_AdA = mkAdA "ħafna" ;
|
||||||
as_CAdv = C.mkCAdv "" "daqs" ; -- "as good as gold"
|
as_CAdv = C.mkCAdv "" "daqs" ; -- "as good as gold"
|
||||||
|
|||||||
Reference in New Issue
Block a user