(Ara) misc. small fixes and additions

This commit is contained in:
Inari Listenmaa
2018-11-27 17:36:23 +01:00
parent f2e9993425
commit 19129aa420
4 changed files with 13 additions and 8 deletions

View File

@@ -10,7 +10,9 @@ concrete IdiomAra of Idiom = CatAra ** open
-- : VP -> Cl ; -- it is hot -- : VP -> Cl ; -- it is hot
ImpersCl vp = ImpersCl vp =
let it : ResAra.NP = pron2np (pgn2pron vp.obj.a.pgn) ; -- if no obj, Per3 Masc Sg chosen by default let it : ResAra.NP = case vp.isPred of {
True => pron2np (pgn2pron vp.obj.a.pgn) ;
False => pgn2pron vp.obj.a.pgn } ; -- if no obj, Per3 Masc Sg chosen by default
in predVP it vp ; in predVP it vp ;
-- : VP -> Cl ; -- one sleeps -- : VP -> Cl ; -- one sleeps
@@ -21,8 +23,9 @@ concrete IdiomAra of Idiom = CatAra ** open
-- : Adv -> S -> Cl ; -- it is here she slept -- : Adv -> S -> Cl ; -- it is here she slept
CleftAdv adv s = CleftAdv adv s =
let comp : Comp = CompAdv adv in let comp : Comp = CompAdv (lin Adv {s = adv.s ++ s.s ! Verbal}) ; -- no idea about word order /IL
predVP he_Pron (UseComp comp) ; pass_V = mkV "مضي" va vi ; -- switch to copula or some other verb if better /IL
in predVP emptyNP (UseV pass_V ** {isPred=True ; pred=comp}) ; -- very hacky /IL
-- : NP -> Cl ; -- there is a house -- : NP -> Cl ; -- there is a house
ExistNP np = ExistNP np =

View File

@@ -1656,6 +1656,10 @@ patHollowImp : (_,_ :Str) -> Gender => Number => Str =\xaf,xAf ->
VPSlash : Type = VP ** {c2 : Preposition ; agrObj : PerGenNum => Str} ; VPSlash : Type = VP ** {c2 : Preposition ; agrObj : PerGenNum => Str} ;
ClSlash : Type = VPSlash ** {subj : Subj} ; ClSlash : Type = VPSlash ** {subj : Subj} ;
emptyVPslash : VP -> VPSlash = \vp -> vp ** {
c2 = noPrep ; agrObj = \\_ => []
} ;
slashV2 : Verb2 -> VPSlash = \v -> slashV2 : Verb2 -> VPSlash = \v ->
predV v ** {c2 = v.c2 ; agrObj = \\_ => []} ; predV v ** {c2 = v.c2 ; agrObj = \\_ => []} ;

View File

@@ -52,10 +52,8 @@ concrete SentenceAra of Sentence = CatAra ** open
SlashVP = predVPSlash ; SlashVP = predVPSlash ;
AdvSlash slash adv = slash ** { s2 = slash.s2 ++ adv.s } ; AdvSlash slash adv = slash ** { s2 = slash.s2 ++ adv.s } ;
-- SlashPrep : Cl -> Prep -> ClSlash -- : Cl -> Prep -> ClSlash
-- Will be awkward to implement in the way ClSlash is now. -- SlashPrep cl prep = TODO
-- ClSlash is implemented the way it is now for a good reason:
-- we need to support different word orders.
-- SlashVS np vs sslash = TODO -- SlashVS np vs sslash = TODO

View File

@@ -46,7 +46,7 @@ concrete StructuralAra of Structural = CatAra **
n = Pl ; d = Def n = Pl ; d = Def
} ; -- IL } ; -- IL
-- if_Subj = ss "ِف" ; if_Subj = mkSubj "إِذَا" Verbal ;
in8front_Prep = mkPrep "مُقَابِلَ" ; in8front_Prep = mkPrep "مُقَابِلَ" ;
i_Pron = ResAra.i_Pron ; i_Pron = ResAra.i_Pron ;
in_Prep = mkPrep "فِي" ; in_Prep = mkPrep "فِي" ;