mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-09-17 15:56:04 -06:00
added reflexive verbs and include the clitic in linref A
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
concrete CatSqi of Cat = CommonX ** open ParamX,Prelude,ResSqi in {
|
||||
lincat A = Adj ;
|
||||
linref A = \a -> case a.clit of {True=>"i"; False=>[]} ++ a.s ! Nom ! Masc ! Sg ;
|
||||
lincat A2 = Adj ** {c2 : Compl} ;
|
||||
linref A2 = \a -> case a.clit of {True=>"i"; False=>[]} ++ a.s ! Nom ! Masc ! Sg ++ a.c2.s ;
|
||||
lincat V, VA, VV, VS, VQ = Verb ;
|
||||
lincat V2, V2S, V2Q = Verb ** {c2 : Compl} ;
|
||||
lincat V3, V2A, V2V = Verb ** {c2,c3 : Compl} ;
|
||||
|
||||
+268
-244
File diff suppressed because it is too large
Load Diff
@@ -1231,6 +1231,19 @@ mkV = overload {
|
||||
mkV : Str -> Str -> V = reg2V -- Indicative;Pres;Sg;P1 participle
|
||||
} ;
|
||||
|
||||
compoundV : V -> Str -> V = \v,adv -> lin V {
|
||||
indicative = \\t,n,p => v.indicative ! t ! n ! p ++ adv ;
|
||||
imperative = \\n => v.imperative ! n ++ adv ;
|
||||
participle = v.participle ++ adv ;
|
||||
pres_optative = \\n,p => v.pres_optative ! n ! p ++ adv ;
|
||||
perf_optative = \\n,p => v.perf_optative ! n ! p ++ adv ;
|
||||
pres_admirative = \\n,p => v.pres_admirative ! n ! p ++ adv ;
|
||||
imperf_admirative = \\n,p => v.imperf_admirative ! n ! p ++ adv ;
|
||||
vtype = v.vtype
|
||||
} ;
|
||||
|
||||
reflV : V -> V = \v -> v ** {vtype=VRefl} ;
|
||||
|
||||
mkV2 = overload {
|
||||
mkV2 : V -> V2 = \v -> lin V2 v ** {c2=noPrep} ;
|
||||
mkV2 : V -> Prep -> V2 = \v,p -> lin V2 v ** {c2=p} ;
|
||||
@@ -1283,7 +1296,12 @@ mkVoc : Str -> Voc = \s -> lin Voc {s=s} ;
|
||||
mkMU : Str -> MU = \s -> lin MU {s=s; isPre=False} ;
|
||||
mkSubj : Str -> Subj = \s -> lin Subj {s=s} ;
|
||||
|
||||
oper mkQuant : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_ : Str) -> Quant =
|
||||
mkQuant = overload {
|
||||
mkQuant : Str -> Quant = \s -> lin Quant {
|
||||
s = \\_,_,_ => s ;
|
||||
sp = Indef
|
||||
} ;
|
||||
mkQuant : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_ : Str) -> Quant =
|
||||
\f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16 -> lin Quant
|
||||
{ s = table {
|
||||
Nom => table {
|
||||
@@ -1328,9 +1346,16 @@ oper mkQuant : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_ : Str) -> Quant =
|
||||
}
|
||||
} ;
|
||||
sp = Indef
|
||||
} ;
|
||||
}
|
||||
} ;
|
||||
|
||||
oper mkDet : (_,_,_,_,_,_,_,_ : Str) -> Number -> Det =
|
||||
mkDet = overload {
|
||||
mkDet : Str -> Number -> Det = \s,n -> lin Det {
|
||||
s = \\_,_ => s ;
|
||||
sp = Indef ;
|
||||
n = n
|
||||
} ;
|
||||
mkDet : (_,_,_,_,_,_,_,_ : Str) -> Number -> Det =
|
||||
\f1,f2,f3,f4,f5,f6,f7,f8,n -> lin Det
|
||||
{ s = table {
|
||||
Nom => table {
|
||||
@@ -1352,7 +1377,8 @@ oper mkDet : (_,_,_,_,_,_,_,_ : Str) -> Number -> Det =
|
||||
} ;
|
||||
sp = Indef ;
|
||||
n = n
|
||||
} ;
|
||||
}
|
||||
} ;
|
||||
|
||||
mkConj : Str -> Conj = \s -> lin Conj {s=s} ;
|
||||
mkPConj : Str -> PConj = \s -> lin PConj {s=s} ;
|
||||
|
||||
@@ -104,7 +104,8 @@ oper mkAdj : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_ : Str) -> Bool -> Adj =
|
||||
|
||||
|
||||
param Tense = Pres | Past | Imperfect | Aorist ;
|
||||
oper Verb = {indicative: Tense => Number => Person => Str; imperative: Number => Str; participle: Str; pres_optative: Number => Person => Str; perf_optative: Number => Person => Str; pres_admirative: Number => Person => Str; imperf_admirative: Number => Person => Str} ; -- 758
|
||||
param VType = VNormal | VRefl ;
|
||||
oper Verb = {indicative: Tense => Number => Person => Str; imperative: Number => Str; participle: Str; pres_optative: Number => Person => Str; perf_optative: Number => Person => Str; pres_admirative: Number => Person => Str; imperf_admirative: Number => Person => Str; vtype : VType} ; -- 758
|
||||
oper mkVerb : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_ : Str) -> Verb =
|
||||
\f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,f25,f26,f27,f28,f29,f30,f31,f32,f33,f34,f35,f36,f37,f38,f39,f40,f41,f42,f43,f44,f45,f46,f47,f48,f49,f50,f51 ->
|
||||
{ indicative = table {
|
||||
@@ -209,7 +210,8 @@ oper mkVerb : (_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_
|
||||
P2 => f50 ;
|
||||
P3 => f51
|
||||
}
|
||||
}
|
||||
} ;
|
||||
vtype = VNormal
|
||||
} ;
|
||||
|
||||
oper link_clitic : Species => Case => Gender => Number => Str =
|
||||
|
||||
Reference in New Issue
Block a user