--concrete QuestionScand of Question = CatScand ** open ResScand 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 ExtScand -- } ; -- -- QuestVP qp vp = -- let cl = mkS (qp.s ! Nom) {n = qp.n ; p = P3} vp.s vp.s2 -- in {s = \\t,a,b,_ => cl.s ! t ! a ! b ! ODir} ; -- -- QuestSlash ip slash = { -- s = \\t,a,p => -- let -- cls = slash.s ! t ! a ! p ; -- who = slash.c2 ++ ip.s ! Acc --- stranding in ExtScand -- in table { -- QDir => who ++ cls ! OQuest ; -- QIndir => who ++ cls ! ODir -- } -- } ; -- -- QuestIAdv iadv cl = { -- s = \\t,a,p => -- let -- cls = cl.s ! t ! a ! p ; -- why = iadv.s -- in table { -- QDir => why ++ cls ! OQuest ; -- QIndir => why ++ cls ! ODir -- } -- } ; -- -- 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 -- } ; -- --}