mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-11 05:49:31 -06:00
74 lines
1.7 KiB
Plaintext
74 lines
1.7 KiB
Plaintext
concrete QuestionHun of Question = CatHun ** open ResHun, Prelude in
|
|
{
|
|
--{
|
|
--
|
|
-- flags optimize=all_subs ;
|
|
--
|
|
-- lin
|
|
--
|
|
-- QuestCl cl = {
|
|
-- s = \\t,a,p =>
|
|
-- let cls = cl.s ! t ! a ! p
|
|
-- in table {
|
|
-- QDir => cls ! OQuest ;
|
|
-- QIndir => "if" ++ cls ! ODir
|
|
-- } ---- "whether" in ExtHun
|
|
-- } ;
|
|
--
|
|
-- QuestVP qp vp =
|
|
-- let cl = mkClause (qp.s ! npNom) (agrP3 qp.n) vp
|
|
-- in {s = \\t,a,b,_ => cl.s ! t ! a ! b ! ODir} ;
|
|
--
|
|
-- QuestSlash ip slash =
|
|
-- mkQuestion (ss (slash.c2 ++ ip.s ! NPAcc)) slash ;
|
|
-- --- stranding in ExratHun
|
|
--
|
|
-- QuestIAdv iadv cl = mkQuestion iadv cl ;
|
|
--
|
|
-- QuestIComp icomp np =
|
|
-- mkQuestion icomp (mkClause (np.s ! npNom) np.a (predAux auxBe)) ;
|
|
--
|
|
--
|
|
-- PrepIP p ip = {s = p.s ++ ip.s ! NPAcc} ;
|
|
--
|
|
-- AdvIP ip adv = {
|
|
-- s = \\c => ip.s ! c ++ adv.s ;
|
|
-- n = ip.n
|
|
-- } ;
|
|
--
|
|
-- IdetCN idet cn = {
|
|
-- s = \\c => idet.s ++ cn.s ! idet.n ! npcase2case c ;
|
|
-- n = idet.n
|
|
-- } ;
|
|
--
|
|
-- IdetIP idet = {
|
|
-- s = \\c => idet.s ;
|
|
-- n = idet.n
|
|
-- } ;
|
|
--
|
|
-- IdetQuant idet num = {
|
|
-- s = idet.s ! num.n ++ num.s ! Nom ;
|
|
-- n = num.n
|
|
-- } ;
|
|
--
|
|
-- AdvIAdv i a = ss (i.s ++ a.s) ;
|
|
--
|
|
-- CompIAdv a = a ;
|
|
-- CompIP p = ss (p.s ! npNom) ;
|
|
--
|
|
-- lincat
|
|
-- QVP = ResHun.VP ;
|
|
-- lin
|
|
-- ComplSlashIP vp np = insertObjPre (\\_ => vp.c2 ++ np.s ! NPAcc) vp ;
|
|
-- AdvQVP vp adv = insertObj (\\_ => adv.s) vp ;
|
|
-- AddAdvQVP vp adv = insertObj (\\_ => adv.s) vp ;
|
|
--
|
|
-- QuestQVP qp vp =
|
|
-- let cl = mkClause (qp.s ! npNom) (agrP3 qp.n) vp
|
|
-- in {s = \\t,a,b,_ => cl.s ! t ! a ! b ! ODir} ;
|
|
--
|
|
--
|
|
--}
|
|
|
|
}
|