mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-06-11 16:10:12 -06:00
71 lines
1.8 KiB
Plaintext
71 lines
1.8 KiB
Plaintext
concrete QuestionLat of Question = CatLat ** open ResLat, IrregLat, Prelude in {
|
|
|
|
-- flags optimize=all_subs ;
|
|
--`
|
|
lin
|
|
-- QuestCl : Cl -> QCl ; -- does John walk
|
|
QuestCl cl = cl ** {
|
|
v = \\t,a,_,ap => cl.v ! t ! a ! VQTrue ! ap ;
|
|
q = ""
|
|
} ;
|
|
|
|
-- QuestVP : IP -> VP -> QCl ; -- who walks
|
|
QuestVP ip vp =
|
|
{
|
|
s = \\_ => "" ;
|
|
adv = "" ;
|
|
neg = \\_,_ => "" ;
|
|
o = \\_ => vp.obj ;
|
|
q = ip.s ! Nom ;
|
|
v = \\t,a,_,ap => vp.s ! VAct (anteriorityToVAnter a) (tenseToVTense t) ip.n P3 ! VQFalse ;
|
|
compl = vp.compl ! Ag Masc ip.n Nom ; -- default gender masculine
|
|
det = { s, sp = \\_ => [] ; n = ip.n } ;
|
|
} ;
|
|
|
|
-- QuestSlash : IP -> ClSlash -> QCl ; -- whom does John love
|
|
-- TO FIX
|
|
|
|
-- QuestIAdv : IAdv -> Cl -> QCl
|
|
QuestIAdv iadv cl = cl ** { q = iadv.s } ;
|
|
|
|
-- QuestIComp : IComp -> NP -> QCl ;
|
|
QuestIComp icomp np =
|
|
{
|
|
s = \\_ => "" ;
|
|
adv = "" ;
|
|
neg = \\_,_ => "" ;
|
|
o = \\_ => combineNounPhrase np ! PronNonDrop ! APostN ! DPreN ! Nom ; -- Should probably not go into the object field
|
|
q = icomp.s ;
|
|
v = \\t,a,_,ap => esseAux.act ! VAct (anteriorityToVAnter a) (tenseToVTense t) np.n P3 ;
|
|
det = { s , sp = \\_=> [] ; n = Sg } ; -- default number singilar
|
|
compl = "" ;
|
|
} ;
|
|
--
|
|
--
|
|
-- PrepIP p ip = {s = p.s ++ ip.s ! Acc} ;
|
|
--
|
|
-- AdvIP ip adv = {
|
|
-- s = \\c => ip.s ! c ++ adv.s ;
|
|
-- n = ip.n
|
|
-- } ;
|
|
--
|
|
-- IdetCN idet cn = {
|
|
-- s = \\c => idet.s ++ cn.s ! idet.n ! c ;
|
|
-- n = idet.n
|
|
-- } ;
|
|
--
|
|
-- IdetIP idet = {
|
|
-- s = \\c => idet.s ;
|
|
-- n = idet.n
|
|
-- } ;
|
|
--
|
|
-- IdetQuant idet num = {
|
|
-- s = idet.s ! num.n ++ num.s ;
|
|
-- n = num.n
|
|
-- } ;
|
|
--
|
|
CompIAdv a = a ;
|
|
-- CompIP p = ss (p.s ! Nom) ;
|
|
--
|
|
}
|