mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-07-01 03:28:34 -06:00
(zul) mostly changes to VP
This commit is contained in:
+206
-71
@@ -267,14 +267,23 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
_+"el" => root ++BIND++ "e" ;
|
||||
_+"al" => (tk 2 root) + "el" ++BIND++ "e" ;
|
||||
_+"an" => (tk 2 root) + "en" ++BIND++ "e" ;
|
||||
_+"w" => root ++BIND ++ "e" ;
|
||||
_ => root ++BIND++ "ile"
|
||||
} ;
|
||||
R_e => case root of {
|
||||
_+"an" => (tk 2 root) + "en" ++BIND++ "e" ;
|
||||
_+"al" => (tk 2 root) + "el" ++BIND++ "e" ;
|
||||
_ => root ++BIND++ "e"
|
||||
} ;
|
||||
R_i => root ++BIND++ "i" ;
|
||||
R_anga => root ++BIND++ "anga"
|
||||
R_i => case root of {
|
||||
_+"w" => root ++BIND++ "a" ;
|
||||
_ => root ++BIND++ "i"
|
||||
} ;
|
||||
R_anga => case root of {
|
||||
_+"al" => (tk 2 root) + "el" ++BIND++ "anga" ;
|
||||
_+"an" => (tk 2 root) + "en" ++BIND++ "anga" ;
|
||||
_ => root ++BIND++ "anga"
|
||||
}
|
||||
} ;
|
||||
r = case root of {
|
||||
"a"+_ => RA ;
|
||||
@@ -435,6 +444,116 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
}
|
||||
} ;
|
||||
|
||||
longform_ya : VForm -> Bool -> RInit -> Str = \vform,longform,rinit -> case <vform,longform,rinit> of {
|
||||
<VFIndic _ Pos PresTense,True,RC> => "ya"++BIND ;
|
||||
<VFIndic _ Pos PresTense,True,_> => "y"++BIND ;
|
||||
<VFIndic _ _ _,_,_> => []
|
||||
} ;
|
||||
|
||||
verb_prefix_stative : VForm -> Agr -> RInit -> Syl -> Str = \vform,agr,rinit,syl -> case vform of {
|
||||
VFIndic MainCl Pos PresTense => subjConcLookup!agr!SC ++BIND ;
|
||||
VFIndic MainCl Pos PastTense => subjConcLookup!agr!SCBe ++BIND ;
|
||||
VFIndic MainCl Pos RemPastTense => subjConcLookup!agr!SCRP ++BIND ;
|
||||
VFIndic MainCl Pos FutTense => subjConcLookup!agr!SC ++BIND++ "zo" ++BIND ;
|
||||
VFIndic MainCl Pos RemFutTense => subjConcLookup!agr!SC ++BIND++ "yo" ++BIND ;
|
||||
|
||||
VFIndic MainCl Neg PresTense => "a" ++BIND++ subjConcLookup!agr!SCVowP ++BIND ;
|
||||
VFIndic MainCl Neg PastTense => subjConcLookup!agr!SCBe ++BIND++ "nga" ++BIND ;
|
||||
VFIndic MainCl Neg RemPastTense => subjConcLookup!agr!SCRP ++BIND++ "nga" ++BIND ;
|
||||
VFIndic MainCl Neg FutTense => "a" ++BIND++ subjConcLookup!agr!SCVowP ++BIND++ (tensePref vform rinit syl) ;
|
||||
VFIndic MainCl Neg RemFutTense => "a" ++BIND++ subjConcLookup!agr!SCVowP ++BIND++ (tensePref vform rinit syl) ;
|
||||
|
||||
VFIndic RelCl Pos PresTense => relConcLookup!agr!rinit ;
|
||||
VFIndic RelCl Pos PastTense => relCopConcBeLookup!agr ;
|
||||
VFIndic RelCl Pos RemPastTense => relCopConcRemPastLookup!agr ;
|
||||
VFIndic RelCl Pos FutTense => relConcLookup!agr!rinit ++ (tensePref vform rinit syl) ;
|
||||
VFIndic RelCl Pos RemFutTense => relConcLookup!agr!rinit ++ (tensePref vform rinit syl) ;
|
||||
|
||||
VFIndic RelCl Neg PresTense => relConcLookup!agr!RC ++ "nga" ++BIND ;
|
||||
VFIndic RelCl Neg PastTense => relCopConcBeLookup!agr ++ "nga" ++BIND ;
|
||||
VFIndic RelCl Neg RemPastTense => relCopConcRemPastLookup!agr ++ "nga" ++BIND ;
|
||||
VFIndic RelCl Neg FutTense => relConcLookup!agr!RC ++ "nga" ++BIND++ (tensePref vform rinit syl) ;
|
||||
VFIndic RelCl Neg RemFutTense => relConcLookup!agr!RC ++ "nga" ++BIND++ (tensePref vform rinit syl)
|
||||
} ;
|
||||
|
||||
rform_stative : VForm -> RForm = \vform -> case vform of {
|
||||
VFIndic _ _ PresTense => R_ile ;
|
||||
VFIndic _ _ PastTense => R_ile ;
|
||||
VFIndic _ _ RemPastTense => R_ile ;
|
||||
VFIndic _ _ FutTense => R_a ;
|
||||
VFIndic _ _ RemFutTense => R_a
|
||||
} ;
|
||||
|
||||
verb_prefix_no_oc : VForm -> Bool -> RInit -> Agr -> Str = \vform,longform,rinit,agr -> let
|
||||
sc = case <vform,longform,rinit> of {
|
||||
<VFIndic MainCl Pos PresTense,False,RC> => subjConcLookup!agr!SC ++BIND ;
|
||||
<VFIndic _ Pos PresTense,True,_> => subjConcLookup!agr!SC ++BIND ;
|
||||
<VFIndic _ Pos PresTense,False,_> => subjConcLookup!agr!SCVow ;
|
||||
<VFIndic _ Neg PresTense,_,RC> => subjConcLookup!agr!SCNeg ++BIND ;
|
||||
<VFIndic _ Neg PresTense,_,_> => subjConcLookup!agr!SCNegVow ++BIND ;
|
||||
|
||||
<VFIndic _ Pos PastTense,_,RC> => subjConcLookup!agr!SC ++BIND ;
|
||||
<VFIndic _ Pos PastTense,_,_> => subjConcLookup!agr!SCVow ;
|
||||
|
||||
<VFIndic _ Neg PastTense,_,RC> => subjConcLookup!agr!SCNeg ++BIND ;
|
||||
<VFIndic _ Neg PastTense,_,_> => subjConcLookup!agr!SCNegVow ++BIND ;
|
||||
|
||||
<VFIndic _ Pos RemPastTense,_,RC> => subjConcLookup!agr!SCVow ;
|
||||
<VFIndic _ Pos RemPastTense,_,_> => subjConcLookup!agr!SCVow ;
|
||||
|
||||
<VFIndic _ Neg RemPastTense,_,RC> => subjConcLookup!agr!SCNeg ++BIND ;
|
||||
<VFIndic _ Neg RemPastTense,_,_> => subjConcLookup!agr!SCNegVow ++BIND ;
|
||||
|
||||
<VFIndic _ Pos _,_,_> => subjConcLookup!agr!SC ++BIND ;
|
||||
<VFIndic _ Neg _,_,_> => subjConcLookup!agr!SCNeg ++BIND
|
||||
} ;
|
||||
ya = longform_ya vform longform rinit ;
|
||||
in
|
||||
(negPref vform) ++
|
||||
sc ++
|
||||
ya ;
|
||||
|
||||
verb_prefix_with_oc : VForm -> Bool -> Agr -> Str = \vform,longform,agr -> let
|
||||
sc = case <vform,longform> of {
|
||||
<VFIndic MainCl Pos PresTense> => subjConcLookup!agr!SC ++BIND ;
|
||||
<VFIndic MainCl Pos RemPastTense> => subjConcLookup!agr!SCVow ;
|
||||
<VFIndic _ Pos _> => subjConcLookup!agr!SC ++BIND ;
|
||||
<VFIndic _ Neg _> => subjConcLookup!agr!SCNeg ++BIND
|
||||
} ;
|
||||
ya = longform_ya vform longform RC ;
|
||||
in
|
||||
(negPref vform) ++
|
||||
sc ++
|
||||
ya ;
|
||||
|
||||
-- rform : VForm -> Bool -> RInit -> RForm = \vform,longform,rinit -> case longform of {
|
||||
-- True => case vform of {
|
||||
-- VFIndic _ Pos PresTense => case rinit of {
|
||||
-- RC => "ya" ++BIND++ R_a ;
|
||||
-- _ => "y" ++BIND++ R_a
|
||||
-- } ;
|
||||
-- VFIndic MainCl Neg PresTense => R_i ;
|
||||
-- VFIndic RelCl Neg PresTense => R_i ;
|
||||
-- VFIndic _ _ FutTense => R_a ;
|
||||
-- VFIndic _ _ RemFutTense => R_a ;
|
||||
-- VFIndic _ Pos PastTense => R_ile ;
|
||||
-- VFIndic _ Neg PastTense => R_anga ;
|
||||
-- VFIndic _ Pos RemPastTense => R_a ;
|
||||
-- VFIndic _ Neg RemPastTense => R_anga
|
||||
-- } ;
|
||||
-- False => case vform of {
|
||||
-- VFIndic _ Pos PresTense => R_a ;
|
||||
-- VFIndic MainCl Neg PresTense => R_i ;
|
||||
-- VFIndic RelCl Neg PresTense => R_i ;
|
||||
-- VFIndic _ _ FutTense => R_a ;
|
||||
-- VFIndic _ _ RemFutTense => R_a ;
|
||||
-- VFIndic _ Pos PastTense => R_e ;
|
||||
-- VFIndic _ Neg PastTense => R_anga ;
|
||||
-- VFIndic _ Pos RemPastTense => R_a ;
|
||||
-- VFIndic _ Neg RemPastTense => R_anga
|
||||
-- }
|
||||
-- } ;
|
||||
|
||||
-- VERB MORPHEMES --
|
||||
|
||||
-- tense prefix
|
||||
@@ -560,46 +679,6 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
-- VFSubj _ => []
|
||||
-- } ;
|
||||
|
||||
-- VForm = VFIndic DMood Polarity BasicTense Aspect | VFPot DMood Polarity Aspect | VFSubj Polarity ;
|
||||
-- aux_be : VForm -> Agr -> Str = \vform,agr ->
|
||||
-- let
|
||||
-- sc = subjConc vform agr False ;
|
||||
-- scvow = subjConc vform agr True ;
|
||||
-- short_be = case agr of {
|
||||
-- -- Second Pl => sc ++ "bu" ;
|
||||
-- -- Third C3_4 Sg => sc ++ "bu" ;
|
||||
-- -- Third C3_4 Pl => sc ++ "bi" ;
|
||||
-- -- Third C9_6 Sg | Third C9_10 Sg => sc ++ "bi" ;
|
||||
-- First _ | Second _ | Third _ _ => subjConcLookup!agr!SCBe
|
||||
-- }
|
||||
-- in
|
||||
-- case vform of {
|
||||
-- VFIndic Princ Pos PresTense _ => [] ;
|
||||
-- VFIndic Princ Pos PerfTense _ => short_be ++BIND ; -- 2021-01-26, chose to only implement short form
|
||||
-- VFIndic Princ Pos FutTense _ => sc ++ "zobe" ;
|
||||
-- VFIndic Princ Pos PastTense _ => scvow ++ "abe" ;
|
||||
--
|
||||
-- VFIndic Princ Neg PresTense _ => [] ;
|
||||
-- VFIndic Princ Neg PerfTense _ => short_be ++BIND ;
|
||||
-- VFIndic Princ Neg FutTense _ => sc ++ "zobe" ;
|
||||
-- VFIndic Princ Neg PastTense _ => scvow ++ "abe" ;
|
||||
--
|
||||
-- VFIndic Part Pos PresTense _ => [] ;
|
||||
-- VFIndic Part Pos PerfTense _ => short_be ++BIND ;
|
||||
-- VFIndic Part Pos FutTense _ => sc ++ "zobe" ;
|
||||
-- VFIndic Part Pos PastTense _ => scvow ++ "abe" ;
|
||||
--
|
||||
-- VFIndic Part Neg PresTense _ => [] ;
|
||||
-- VFIndic Part Neg PerfTense _ => short_be ++BIND ;
|
||||
-- VFIndic Part Neg FutTense _ => sc ++ "zobe" ;
|
||||
-- VFIndic Part Neg PastTense _ => scvow ++ "abe" ;
|
||||
--
|
||||
-- VFPot _ Pos _ => sc ++ "ngaba" ;
|
||||
-- VFPot _ Neg _ => sc ++ "ngebe" ;
|
||||
-- VFSubj Pos => sc ++ "be" ++BIND ;
|
||||
-- VFSubj Neg => sc ++ "ngabi"
|
||||
-- } ;
|
||||
|
||||
-------------
|
||||
-- ADVERBS --
|
||||
-------------
|
||||
@@ -686,8 +765,8 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
rel_yo_2 : Str = BIND++"yo" ;
|
||||
|
||||
relSuf : VForm -> Str = \vform -> case vform of {
|
||||
VFIndic _ Pos PresTense => rel_yo_2 ;
|
||||
VFIndic _ Pos PastTense => rel_yo_2 ;
|
||||
VFIndic RelCl Pos PresTense => rel_yo_2 ;
|
||||
VFIndic RelCl Pos PastTense => rel_yo_2 ;
|
||||
VFIndic _ _ _ => []
|
||||
} ;
|
||||
|
||||
@@ -885,6 +964,7 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
(First _ | Second _ ) => RC
|
||||
} ;
|
||||
|
||||
|
||||
locinit : Agr => RInit =
|
||||
table {
|
||||
Third C1_2 Sg => RC ;
|
||||
@@ -1231,9 +1311,9 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
First Pl => table {SC => "si" ; SCVow => "s"++BIND ; SCNeg => "si" ; SCNegVow => "s" ; SCPart => "si" ; SCPS => "si" ; SCVowP => "si" ; SCBe => "besi" ; SCRP => "sasi" } ;
|
||||
Second Pl => table {SC => "ni" ; SCVow => "n"++BIND ; SCNeg => "ni" ; SCNegVow => "n" ; SCPart => "ni" ; SCPS => "ni" ; SCVowP => "ni" ; SCBe => "beni" ; SCRP => "nani" } ;
|
||||
Third C1_2 Sg => table {SC => "u" ; SCVow => "w"++BIND ; SCNeg => "ka" ; SCNegVow => "k" ; SCPart => "e" ; SCPS => "a" ; SCVowP => "wu" ; SCBe => "ube" ; SCRP => "waye" } ;
|
||||
Third C1_2 Pl => table {SC => "ba" ; SCVow => "b"++BIND ; SCNeg => "ba" ; SCNegVow => "b" ; SCPart => "be" ; SCPS => "ba" ; SCVowP => "ba" ; SCBe => "babe" ; SCRP => "babe" } ;
|
||||
Third C1_2 Pl => table {SC => "ba" ; SCVow => "b"++BIND ; SCNeg => "ba" ; SCNegVow => "b" ; SCPart => "be" ; SCPS => "ba" ; SCVowP => "ba" ; SCBe => "bebe" ; SCRP => "babe" } ;
|
||||
Third C1a_2a Sg => table {SC => "u" ; SCVow => "w"++BIND ; SCNeg => "ka" ; SCNegVow => "k" ; SCPart => "e" ; SCPS => "a" ; SCVowP => "wu" ; SCBe => "ube" ; SCRP => "waye" } ;
|
||||
Third C1a_2a Pl => table {SC => "ba" ; SCVow => "b"++BIND ; SCNeg => "ba" ; SCNegVow => "b" ; SCPart => "be" ; SCPS => "ba" ; SCVowP => "ba" ; SCBe => "babe" ; SCRP => "babe" } ;
|
||||
Third C1a_2a Pl => table {SC => "ba" ; SCVow => "b"++BIND ; SCNeg => "ba" ; SCNegVow => "b" ; SCPart => "be" ; SCPS => "ba" ; SCVowP => "ba" ; SCBe => "bebe" ; SCRP => "babe" } ;
|
||||
Third C3_4 Sg => table {SC => "u" ; SCVow => "w"++BIND ; SCNeg => "wu" ; SCNegVow => "w" ; SCPart => "u" ; SCPS => "u" ; SCVowP => "wu" ; SCBe => "ubu" ; SCRP => "wawu" } ;
|
||||
Third C3_4 Pl => table {SC => "i" ; SCVow => "y"++BIND ; SCNeg => "yi" ; SCNegVow => "y" ; SCPart => "i" ; SCPS => "i" ; SCVowP => "yi" ; SCBe => "ibi" ; SCRP => "yayi" } ;
|
||||
Third C5_6 Sg => table {SC => "li" ; SCVow => "l"++BIND ; SCNeg => "li" ; SCNegVow => "l" ; SCPart => "li" ; SCPS => "li" ; SCVowP => "li" ; SCBe => "beli" ; SCRP => "lali" } ;
|
||||
@@ -1247,18 +1327,13 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
Third C11_10 Pl => table {SC => "zi" ; SCVow => "z"++BIND ; SCNeg => "zi" ; SCNegVow => "z" ; SCPart => "zi" ; SCPS => "zi" ; SCVowP => "zi" ; SCBe => "bezi" ; SCRP => "zazi" } ;
|
||||
Third C9_6 Sg => table {SC => "i" ; SCVow => "y"++BIND ; SCNeg => "yi" ; SCNegVow => "y" ; SCPart => "yi" ; SCPS => "i" ; SCVowP => "yi" ; SCBe => "ibi" ; SCRP => "yayi" } ;
|
||||
Third C9_6 Pl => table {SC => "a" ; SCVow => [] ; SCNeg => "wa" ; SCNegVow => "w" ; SCPart => "e" ; SCPS => "a" ; SCVowP => "wa" ; SCBe => "abe" ; SCRP => "aye" } ;
|
||||
Third C14 _ => table {SC => "bu" ; SCVow => "b"++BIND ; SCNeg => "bu" ; SCNegVow => "b" ; SCPart => "bu" ; SCPS => "bu" ; SCVowP => "bu" ; SCBe => "bebu" ; SCRP => "kwaku" } ;
|
||||
Third C14 _ => table {SC => "bu" ; SCVow => "b"++BIND ; SCNeg => "bu" ; SCNegVow => "b" ; SCPart => "bu" ; SCPS => "bu" ; SCVowP => "bu" ; SCBe => "bebu" ; SCRP => "babu" } ;
|
||||
Third C15 _ => table {SC => "ku" ; SCVow => "kw"++BIND ; SCNeg => "ku" ; SCNegVow => "k" ; SCPart => "ku" ; SCPS => "ku" ; SCVowP => "ku" ; SCBe => "beku" ; SCRP => "kwaku" } ;
|
||||
Third C17 _ => table {SC => "ku" ; SCVow => "kw"++BIND ; SCNeg => "ku" ; SCNegVow => "k" ; SCPart => "ku" ; SCPS => "ku" ; SCVowP => "ku" ; SCBe => "beku" ; SCRP => "kwaku" }
|
||||
} ;
|
||||
|
||||
-- scvow_bind : Agr -> Str = \agr -> case agr of {
|
||||
-- (Third C5_6 Pl|Third C9_6 Pl) => [] ;
|
||||
-- _ => subjConcLookup ! agr ! SCVow ++BIND
|
||||
-- } ;
|
||||
|
||||
subjConc : VForm -> Agr -> Bool -> Str = \vform,agr,prevow ->
|
||||
case <prevow,vform> of {
|
||||
subjConc : VForm -> Agr -> Bool -> Str = \vform,agr,vow ->
|
||||
case <vow,vform> of {
|
||||
<False,VFIndic _ Neg _> => subjConcLookup ! agr ! SCNeg ++BIND ;
|
||||
<True,VFIndic _ Neg _> => subjConcLookup ! agr ! SCNegVow ++BIND ;
|
||||
<True,VFIndic _ _ _> => subjConcLookup ! agr ! SCVow ;
|
||||
@@ -1266,19 +1341,6 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
<_,VFIndic _ _ _> => subjConcLookup ! agr ! SC ++BIND
|
||||
} ;
|
||||
|
||||
-- -be aux: reference time in relation to coding time
|
||||
-- relSubjConc : BasicTense -> Agr -> Str = \tense,agr ->
|
||||
-- relSubjConc : BasicTense -> Agr -> Str = \tense,agr ->
|
||||
-- case tense of {
|
||||
-- PastTense => (subjConcLookup ! agr ! SCVow) ++ "a" ++BIND++ case agr of {
|
||||
-- Second Sg | Third C3_4 Sg => "w" ++BIND ;
|
||||
-- Third C1_2 Sg | Third C1a_2a Sg | Third C3_4 Pl | Third C5_6 Pl | Third C9_10 Sg => "y" ++BIND ;
|
||||
-- First _ | Second _ | Third _ _ => []
|
||||
-- } ;
|
||||
-- PerfTense | PresTense => subjConcLookup ! agr ! SC ++BIND++ "be" ; -- NOTE: present tense doesn't make much sense here, so default to perf
|
||||
-- FutTense => subjConcLookup ! agr ! SC ++BIND++ "zobe"
|
||||
-- } ;
|
||||
|
||||
impPref : Polarity -> Str = \pol -> case pol of {
|
||||
Pos => [] ;
|
||||
Neg => "u" ++BIND++ "nga" ++BIND
|
||||
@@ -1291,7 +1353,7 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
in
|
||||
case vform of {
|
||||
VFIndic _ Pos PresTense => subjConcLookup ! agr ! SC ++BIND ;
|
||||
VFIndic _ Pos PastTense => [] ; -- "be"++BIND++ subjConcLookup ! agr ! SCBe ++BIND ;
|
||||
VFIndic _ Pos PastTense => [] ;
|
||||
VFIndic _ Pos RemPastTense => subjConcLookup ! agr ! SC ++BIND++ "be" ++ subjConcLookup ! agr ! SCBe ++BIND ;
|
||||
VFIndic _ Pos FutTense => subjConcLookup ! agr ! SC ++BIND ++ "zobe" ++ subjConcLookup ! agr ! SC ++BIND ;
|
||||
VFIndic _ Pos RemFutTense => subjConcLookup ! agr ! SC ++BIND ++ "yobe" ++ subjConcLookup ! agr ! SC ++BIND ;
|
||||
@@ -1402,7 +1464,18 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
VFIndic _ _ PastTense => relCopConcBeLookup!a ;
|
||||
VFIndic _ _ RemPastTense => case a of {
|
||||
Third C5_6 Pl => [] ; -- relConcLookup!a!RA ; -- a + aye = aye
|
||||
(First _ | Second _ | Third _ _ ) => shortRelConc!a --++ subjConcLookup!a!SCRP
|
||||
(First _ | Second _ | Third _ _ ) => shortRelConc!a
|
||||
}
|
||||
} ;
|
||||
|
||||
quantConcCop : VForm -> Agr -> Str = \vform,a -> case vform of {
|
||||
VFIndic _ _ PresTense => relConcLookup!a!(quantinit!a) ;
|
||||
VFIndic _ _ FutTense => relConcLookup!a!(quantinit!a) ;
|
||||
VFIndic _ _ RemFutTense => relConcLookup!a!(quantinit!a) ;
|
||||
VFIndic _ _ PastTense => relCopConcBeLookup!a ;
|
||||
VFIndic _ _ RemPastTense => case a of {
|
||||
Third C5_6 Pl => [] ; -- relConcLookup!a!RA ; -- a + aye = aye
|
||||
(First _ | Second _ | Third _ _ ) => shortRelConc!a
|
||||
}
|
||||
} ;
|
||||
|
||||
@@ -1414,7 +1487,7 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
VFIndic _ _ PastTense => relCopConcBeLookup!a ;
|
||||
VFIndic _ _ RemPastTense => case a of {
|
||||
Third C5_6 Pl => [] ; -- relConcLookup!a!RA ; -- a + aye = aye
|
||||
(First _ | Second _ | Third _ _ ) => shortRelConc!a --++ subjConcLookup!a!SCRP
|
||||
(First _ | Second _ | Third _ _ ) => shortRelConc!a
|
||||
}
|
||||
} ;
|
||||
|
||||
@@ -1499,6 +1572,60 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
Second Pl => "ebeni"++BIND
|
||||
} ;
|
||||
|
||||
-- relCopConcBeLookup : Agr => RInit => Str =
|
||||
-- table {
|
||||
-- Third C1_2 Sg => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "obe"++BIND } ;
|
||||
-- Third C1_2 Pl => table { (RA|RE|RI|RO|RU) => "abab"++BIND ; _ => "ababe"++BIND } ;
|
||||
-- Third C1a_2a Sg => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "obe"++BIND } ;
|
||||
-- Third C1a_2a Pl => table { (RA|RE|RI|RO|RU) => "abab"++BIND ; _ => "ababe"++BIND } ;
|
||||
-- Third C3_4 Sg => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "obu"++BIND } ;
|
||||
-- Third C3_4 Pl => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "ebi"++BIND } ;
|
||||
-- Third C5_6 Sg => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "ebeli"++BIND } ;
|
||||
-- Third C5_6 Pl => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "abe"++BIND } ;
|
||||
-- Third C7_8 Sg => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "ebesi"++BIND } ;
|
||||
-- Third C7_8 Pl => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "ebezi"++BIND } ;
|
||||
-- Third C9_10 Sg => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "ebi"++BIND } ;
|
||||
-- Third C9_10 Pl => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "ebezi"++BIND } ;
|
||||
-- Third C11_10 Sg => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "obelu"++BIND } ;
|
||||
-- Third C11_10 Pl => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "ebezi"++BIND } ;
|
||||
-- Third C9_6 Sg => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "ebi"++BIND } ;
|
||||
-- Third C9_6 Pl => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "abe"++BIND } ;
|
||||
-- Third C14 _ => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "obebu"++BIND } ;
|
||||
-- Third C15 _ => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "obeku"++BIND } ;
|
||||
-- Third C17 _ => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "obeku"++BIND } ;
|
||||
-- First Sg => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "ebengi"++BIND } ;
|
||||
-- First Pl => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "ebesi"++BIND } ;
|
||||
-- Second Sg => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "obu"++BIND } ;
|
||||
-- Second Pl => table { (RA|RE|RI|RO|RU) => "ob"++BIND ; _ => "ebeni"++BIND }
|
||||
-- } ;
|
||||
|
||||
relCopConcRemPastLookup : Agr => Str =
|
||||
table {
|
||||
Third C1_2 Sg => "owaye"++BIND ;
|
||||
Third C1_2 Pl => "ababe"++BIND ;
|
||||
Third C1a_2a Sg => "owaye"++BIND ;
|
||||
Third C1a_2a Pl => "ababe"++BIND ;
|
||||
Third C3_4 Sg => "owawu"++BIND ;
|
||||
Third C3_4 Pl => "eyayi"++BIND ;
|
||||
Third C5_6 Sg => "elali"++BIND ;
|
||||
Third C5_6 Pl => "aye"++BIND ;
|
||||
Third C7_8 Sg => "esasi"++BIND ;
|
||||
Third C7_8 Pl => "ezazi"++BIND ;
|
||||
Third C9_10 Sg => "eyayi"++BIND ;
|
||||
Third C9_10 Pl => "ezazi"++BIND ;
|
||||
Third C11_10 Sg => "olwalu"++BIND ;
|
||||
Third C11_10 Pl => "ezazi"++BIND ;
|
||||
Third C9_6 Sg => "eyayi"++BIND ;
|
||||
Third C9_6 Pl => "aye"++BIND ;
|
||||
Third C14 _ => "obabu"++BIND ;
|
||||
Third C15 _ => "okwaku"++BIND ;
|
||||
Third C17 _ => "okwaku"++BIND ;
|
||||
First Sg => "engangi"++BIND ;
|
||||
First Pl => "esasi"++BIND ;
|
||||
Second Sg => "owawu"++BIND ;
|
||||
Second Pl => "enani"++BIND
|
||||
} ;
|
||||
|
||||
-- relCopConcBeLookup : Agr => RInit => Str =
|
||||
-- table {
|
||||
-- Third C1_2 Sg => table { _ => "obe"++BIND } ;
|
||||
@@ -1706,6 +1833,14 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
-- QUANTITATIVE AGREEMENT MORPHEME --
|
||||
-- (demonstatives)
|
||||
|
||||
quantinit : Agr => RInit =
|
||||
table {
|
||||
Third C5_6 Pl => RO ;
|
||||
Third C9_6 Pl => RO ;
|
||||
Third _ _ => RC ;
|
||||
(First _ | Second _ ) => RC
|
||||
} ;
|
||||
|
||||
exclQuantConc : Agr => Str = table {
|
||||
Third C1_2 Sg => "ye" ;
|
||||
Third C1_2 Pl => "bo" ;
|
||||
@@ -1918,7 +2053,7 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
||||
|
||||
kho_cop : VForm -> Agr -> Str = \vform,agr -> case vform of {
|
||||
VFIndic MainCl Neg PresTense => neg_kho_cop_pref agr ++ "kho";
|
||||
VFIndic RelCl Neg PresTense => (relConcCop vform agr RC) ++ (ap_cop_pref (VFIndic RelCl Neg PresTense) agr RelType) ++BIND++ "kho" ;
|
||||
VFIndic RelCl Neg PresTense => (relConcCop vform agr RC) ++ (ap_cop_pref (VFIndic RelCl Neg PresTense) agr RelType) ++ "kho" ;
|
||||
VFIndic RelCl p t => (relConcCop vform agr RC) ++ (ap_cop_pref (VFIndic RelCl p t) agr RelType) ++ "khona" ;
|
||||
VFIndic MainCl p t => (ap_cop_pref (VFIndic MainCl p t) agr RelType) ++ "khona"
|
||||
} ;
|
||||
|
||||
Reference in New Issue
Block a user