mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-05-28 01:18:57 -06:00
(zul) NP conjunction
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
concrete ExtraExtZul of ExtraExt =
|
concrete ExtraExtZul of ExtraExt =
|
||||||
CatZul [NP,VP,CN,V,Temp,S,Cl,Adv,Pron,QCl,QS,A,RS,IAdv,IComp,Pol,Det,Quant,N,PN],
|
CatZul [NP,VP,CN,V,Temp,S,Cl,Adv,Pron,QCl,QS,A,RS,IAdv,IComp,Pol,Det,Quant,N,PN,Conj],
|
||||||
CatExtZul
|
CatExtZul
|
||||||
** open ResZul,Prelude,ParamX in {
|
** open ResZul,Prelude,ParamX in {
|
||||||
|
|
||||||
@@ -570,6 +570,21 @@ concrete ExtraExtZul of ExtraExt =
|
|||||||
|
|
||||||
AdvQS adv qs = { s = adv.s ++ qs.s ; qword_pre = [] ; qword_post = [] } ;
|
AdvQS adv qs = { s = adv.s ++ qs.s ; qword_pre = [] ; qword_post = [] } ;
|
||||||
|
|
||||||
|
ExtConjNP np1 conj np2 = {
|
||||||
|
s = \\nform => np1.s!nform ++ (link_conj conj np2.i) ++ np2.s!NReduced ;
|
||||||
|
agr = compAgr np1.agr np2.agr ;
|
||||||
|
i = np1.i ;
|
||||||
|
proDrop = andB np1.proDrop np2.proDrop ;
|
||||||
|
isPron = np1.isPron ;
|
||||||
|
heavy = orB np1.heavy np2.heavy ;
|
||||||
|
empty = np1.empty ++ np2.empty
|
||||||
|
} ;
|
||||||
|
|
||||||
|
with_Conj = {
|
||||||
|
s = withPref ;
|
||||||
|
fix = True
|
||||||
|
} ;
|
||||||
|
|
||||||
-- Deverb15 v =
|
-- Deverb15 v =
|
||||||
-- let
|
-- let
|
||||||
-- agr = Third C15 Sg ;
|
-- agr = Third C15 Sg ;
|
||||||
|
|||||||
@@ -1841,8 +1841,17 @@ resource ResZul = open Prelude,Predef,ParamX in {
|
|||||||
-- OTHER
|
-- OTHER
|
||||||
----------------------------------------
|
----------------------------------------
|
||||||
|
|
||||||
link_conj : Str -> Str -> Str -> Bool -> Str = \conj,s_full,s_novow,fix -> case fix of {
|
link_conj : { s: RInit => Str ; fix : Bool } -> RInit -> Str = \conj,rinit -> case conj.fix of {
|
||||||
True => conj ++BIND ++ s_novow ;
|
True => conj.s!rinit ++BIND ;
|
||||||
False => conj ++ s_full
|
False => conj.s!RC
|
||||||
|
} ;
|
||||||
|
|
||||||
|
compAgr : Agr -> Agr -> Agr = \a1,a2 -> case <a1,a2> of {
|
||||||
|
<First _,(First _ | Second _ | Third _ _)> => First Pl ;
|
||||||
|
<(First _ | Second _ | Third _ _),First _> => First Pl ;
|
||||||
|
<Second _,(First _ | Second _ | Third _ _)> => Second Pl ;
|
||||||
|
<(First _ | Second _ | Third _ _),Second _> => Second Pl ;
|
||||||
|
<Third (C1_2|C1a_2a) _, Third _ _> => Third C1_2 Pl ;
|
||||||
|
<Third _ _,Third c _> => Third c Pl
|
||||||
} ;
|
} ;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
abstract ExtraExt =
|
abstract ExtraExt =
|
||||||
Cat [NP,VP,CN,V,Temp,S,Cl,Adv,Pron,QCl,QS,A,RS,IAdv,IComp,Pol,Det,Quant,N,PN],
|
Cat [NP,VP,CN,V,Temp,S,Cl,Adv,Pron,QCl,QS,A,RS,IAdv,IComp,Pol,Det,Quant,N,PN,Conj],
|
||||||
CatExt ** {
|
CatExt ** {
|
||||||
|
|
||||||
fun
|
fun
|
||||||
@@ -126,6 +126,10 @@ abstract ExtraExt =
|
|||||||
|
|
||||||
kakhulu_Adv : Adv ;
|
kakhulu_Adv : Adv ;
|
||||||
|
|
||||||
|
ExtConjNP : NP -> Conj -> NP -> NP ;
|
||||||
|
|
||||||
|
with_Conj : Conj ;
|
||||||
|
|
||||||
-- Deverb15 : V -> N ;
|
-- Deverb15 : V -> N ;
|
||||||
|
|
||||||
-- AdvQS : IAdv -> S -> QS ; -- maybe it is a pain that burns 2020-01-15: consider that this should rather be dealt with using QuestIAdv)
|
-- AdvQS : IAdv -> S -> QS ; -- maybe it is a pain that burns 2020-01-15: consider that this should rather be dealt with using QuestIAdv)
|
||||||
|
|||||||
Reference in New Issue
Block a user