forked from GitHub/gf-rgl
premodifiers like never can change the polarity of VP
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
--# -coding=utf8
|
--# -coding=utf8
|
||||||
concrete CatBul of Cat = CommonX - [IAdv,CAdv,SC] ** open ResBul, Prelude, Predef, (R = ParamX) in {
|
concrete CatBul of Cat = CommonX - [IAdv,CAdv,AdV,SC] ** open ResBul, Prelude, Predef, (R = ParamX) in {
|
||||||
|
|
||||||
lincat
|
lincat
|
||||||
-- Tensed/Untensed
|
-- Tensed/Untensed
|
||||||
@@ -42,10 +42,11 @@ concrete CatBul of Cat = CommonX - [IAdv,CAdv,SC] ** open ResBul, Prelude, Prede
|
|||||||
|
|
||||||
AP = {s : AForm => Person => Str; adv : Str; isPre : Bool} ;
|
AP = {s : AForm => Person => Str; adv : Str; isPre : Bool} ;
|
||||||
|
|
||||||
-- Adjective
|
-- Adverb
|
||||||
|
|
||||||
CAdv = {s : Str; sn : Str} ;
|
CAdv = {s : Str; sn : Str} ;
|
||||||
IAdv = {s : QForm => Str} ;
|
IAdv = {s : QForm => Str} ;
|
||||||
|
AdV = {s : Str; p : Polarity} ;
|
||||||
SC = {s : Agr => Str} ;
|
SC = {s : Agr => Str} ;
|
||||||
|
|
||||||
-- Noun
|
-- Noun
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ concrete ConjunctionBul of Conjunction =
|
|||||||
|
|
||||||
ConjAdV conj ss = {
|
ConjAdV conj ss = {
|
||||||
s = conj.s ++ (linCoordSep [])!conj.distr!conj.conj++ss.s!conj.distr!conj.conj;
|
s = conj.s ++ (linCoordSep [])!conj.distr!conj.conj++ss.s!conj.distr!conj.conj;
|
||||||
|
p = Pos
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
ConjIAdv conj ss = {
|
ConjIAdv conj ss = {
|
||||||
|
|||||||
@@ -29808,7 +29808,7 @@ lin
|
|||||||
otb_ja_gvane_N = mkN071 "отбягване" ;
|
otb_ja_gvane_N = mkN071 "отбягване" ;
|
||||||
otvara_N = mkN041 "отвара" ;
|
otvara_N = mkN041 "отвара" ;
|
||||||
otvara_ch_ka_N = mkN041 "отварачка" ;
|
otvara_ch_ka_N = mkN041 "отварачка" ;
|
||||||
otvar_ja_m_V = actionV (mkV187 "отварям") (mkV152 "отбегна") ;
|
otvar_ja_m_V = actionV (mkV187 "отварям") (mkV173 "отворя")) ;
|
||||||
otvar_ja_ne_N = mkN071 "отваряне" ;
|
otvar_ja_ne_N = mkN071 "отваряне" ;
|
||||||
otve_zj_dam_V = actionV (mkV186 "отвеждам") (mkV145 "отведа") ;
|
otve_zj_dam_V = actionV (mkV186 "отвеждам") (mkV145 "отведа") ;
|
||||||
otve_zj_dane_N = mkN071 "отвеждане" ;
|
otve_zj_dane_N = mkN071 "отвеждане" ;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ concrete ExtendBul of Extend = CatBul ** open Prelude, Predef, ResBul, GrammarBu
|
|||||||
lin
|
lin
|
||||||
GenModNP num np cn = DetCN (DetQuant DefArt num) (AdvCN cn (PrepNP possess_Prep np)) ; -- this man's car(s) ; DEFAULT the car of this man
|
GenModNP num np cn = DetCN (DetQuant DefArt num) (AdvCN cn (PrepNP possess_Prep np)) ; -- this man's car(s) ; DEFAULT the car of this man
|
||||||
|
|
||||||
AdAdV = cc2 ;
|
AdAdV a adv = {s = a.s ++ adv.s; p = adv.p} ;
|
||||||
|
|
||||||
EmptyRelSlash slash = {
|
EmptyRelSlash slash = {
|
||||||
s = \\t,a,p,agr => slash.c2.s ++ whichRP ! agr.gn ++ slash.s ! agr ! t ! a ! p ! Main ;
|
s = \\t,a,p,agr => slash.c2.s ++ whichRP ! agr.gn ++ slash.s ! agr ! t ! a ! p ! Main ;
|
||||||
@@ -26,7 +26,7 @@ lin
|
|||||||
g = n2.g
|
g = n2.g
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
PositAdVAdj a = {s = a.adv} ;
|
PositAdVAdj a = {s = a.adv; p = Pos} ;
|
||||||
|
|
||||||
PresPartAP vp =
|
PresPartAP vp =
|
||||||
let ap : AForm => Person => Str
|
let ap : AForm => Person => Str
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ concrete GrammarBul of Grammar =
|
|||||||
TextBul,
|
TextBul,
|
||||||
StructuralBul,
|
StructuralBul,
|
||||||
IdiomBul,
|
IdiomBul,
|
||||||
TenseX - [CAdv,IAdv,SC]
|
TenseX - [CAdv,IAdv,AdV,SC]
|
||||||
** {
|
** {
|
||||||
flags coding=cp1251 ;
|
flags coding=cp1251 ;
|
||||||
|
|
||||||
|
|||||||
@@ -16,7 +16,8 @@ oper
|
|||||||
-- after the verb. Some can be preverbal (e.g. "always").
|
-- after the verb. Some can be preverbal (e.g. "always").
|
||||||
|
|
||||||
mkAdv : Str -> Adv = \x -> ss x ** {lock_Adv = <>} ;
|
mkAdv : Str -> Adv = \x -> ss x ** {lock_Adv = <>} ;
|
||||||
mkAdV : Str -> AdV = \x -> ss x ** {lock_AdV = <>} ;
|
mkAdV : Str -> AdV = \x -> {s = x; p = Pos; lock_AdV = <>} ;
|
||||||
|
mkAdVNegative : Str -> AdV = \x -> {s = x; p = Neg; lock_AdV = <>} ;
|
||||||
|
|
||||||
-- Adverbs modifying adjectives and sentences can also be formed.
|
-- Adverbs modifying adjectives and sentences can also be formed.
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ concrete StructuralBul of Structural = CatBul **
|
|||||||
almost_AdA, almost_AdN = ss "ïî÷òè" ;
|
almost_AdA, almost_AdN = ss "ïî÷òè" ;
|
||||||
at_least_AdN, at_most_AdN = ss "ïî÷òè" ; ---- AR
|
at_least_AdN, at_most_AdN = ss "ïî÷òè" ; ---- AR
|
||||||
although_Subj = ss ["âúïðåêè ÷å"] ;
|
although_Subj = ss ["âúïðåêè ÷å"] ;
|
||||||
always_AdV = ss "âèíàãè" ;
|
always_AdV = mkAdV "âèíàãè" ;
|
||||||
and_Conj = {s=[]; conj=0; distr=False; n = Pl} ;
|
and_Conj = {s=[]; conj=0; distr=False; n = Pl} ;
|
||||||
because_Subj = ss "çàùîòî" ;
|
because_Subj = ss "çàùîòî" ;
|
||||||
before_Prep = mkPrep "ïðåäè" Acc ;
|
before_Prep = mkPrep "ïðåäè" Acc ;
|
||||||
|
|||||||
@@ -91,7 +91,7 @@ concrete VerbBul of Verb = CatBul ** open Prelude, ResBul, ParadigmsBul in {
|
|||||||
ad = {isEmpty=False; s=vp.ad.s ++ adv.s} ;
|
ad = {isEmpty=False; s=vp.ad.s ++ adv.s} ;
|
||||||
compl = vp.compl ;
|
compl = vp.compl ;
|
||||||
vtype = vp.vtype ;
|
vtype = vp.vtype ;
|
||||||
p = vp.p ;
|
p = orPol adv.p vp.p ;
|
||||||
isSimple = vp.isSimple
|
isSimple = vp.isSimple
|
||||||
} ;
|
} ;
|
||||||
AdVVPSlash adv vp = {
|
AdVVPSlash adv vp = {
|
||||||
|
|||||||
Reference in New Issue
Block a user