mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-22 03:09:33 -06:00
62 lines
1.5 KiB
Plaintext
62 lines
1.5 KiB
Plaintext
--# -path=.:../abstract:../common:../../prelude
|
|
|
|
concrete QuestionRus of Question = CatRus ** open ResRus, 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 ExtRus
|
|
-- } ;
|
|
--
|
|
-- QuestVP qp vp =
|
|
-- let cl = mkClause (qp.s ! Nom) {n = qp.n ; p = P3} vp
|
|
-- in {s = \\t,a,b,_ => cl.s ! t ! a ! b ! ODir} ;
|
|
--
|
|
-- QuestSlash ip slash =
|
|
-- mkQuestion (ss (slash.c2 ++ ip.s ! Acc)) slash ;
|
|
-- --- stranding in ExtRus
|
|
--
|
|
-- QuestIAdv iadv cl = mkQuestion iadv cl ;
|
|
--
|
|
-- QuestIComp icomp np =
|
|
-- mkQuestion icomp (mkClause (np.s ! Nom) np.a (predAux auxBe)) ;
|
|
--
|
|
--
|
|
-- PrepIP p ip = {s = p.s ++ ip.s ! Nom} ;
|
|
--
|
|
-- AdvIP ip adv = {
|
|
-- s = \\c => ip.s ! c ++ adv.s ;
|
|
-- n = ip.n
|
|
-- } ;
|
|
--
|
|
-- IDetCN idet num ord cn = {
|
|
-- s = \\c => idet.s ++ num.s ++ ord.s ++ cn.s ! idet.n ! c ;
|
|
-- n = idet.n
|
|
-- } ;
|
|
--
|
|
-- CompIAdv a = a ;
|
|
--
|
|
-- oper
|
|
-- mkQuestion :
|
|
-- {s : Str} -> Clause ->
|
|
-- {s : Tense => Anteriority => Polarity => QForm => Str} = \wh,cl ->
|
|
-- {
|
|
-- s = \\t,a,p =>
|
|
-- let
|
|
-- cls = cl.s ! t ! a ! p ;
|
|
-- why = wh.s
|
|
-- in table {
|
|
-- QDir => why ++ cls ! OQuest ;
|
|
-- QIndir => why ++ cls ! ODir
|
|
-- }
|
|
-- } ;
|
|
--
|
|
}
|