forked from GitHub/gf-rgl
Added minimally functional Tamil
This commit is contained in:
@@ -0,0 +1,152 @@
|
||||
concrete QuestionTam of Question = CatTam ** open
|
||||
Prelude, ResTam, ParadigmsTam, (VS=VerbTam), (NM=NounTam), (SS=StructuralTam) in {
|
||||
|
||||
-- A question can be formed from a clause ('yes-no question') or
|
||||
-- with an interrogative.
|
||||
|
||||
-- Interrogative pronouns can be formed with interrogative
|
||||
-- determiners, with or without a noun.
|
||||
--lin
|
||||
-- -- : IDet -> CN -> IP ; -- which five songs
|
||||
-- IdetCN idet cn = NM.DetCN idet cn ** {
|
||||
-- sp = \\nf => idet.sp ! nf ++ cn.s ! nf
|
||||
-- } ;
|
||||
|
||||
-- -- : IDet -> IP ; -- which five
|
||||
-- IdetIP idet = NM.DetNP idet ** {sp = idet.sp};
|
||||
|
||||
-- -- : IQuant -> Num -> IDet ; -- which (five)
|
||||
-- IdetQuant iquant num = iquant ** {
|
||||
-- pr = num.s ++ case iquant.isPre of {True => iquant.s ; False => [] } ;
|
||||
-- -- if isPre is True, then: "berapa kucing"
|
||||
-- s = case iquant.isPre of { False => iquant.s ; True => [] };
|
||||
-- -- if isPre is False, use s: "kucing berapa"
|
||||
-- n = num.n ;
|
||||
-- count = "" ;
|
||||
-- } ;
|
||||
|
||||
-- -- : IP -> ClSlash -> QCl ; -- whom does John love
|
||||
-- QuestSlash ip cls = cls ** {
|
||||
-- pred = \\vf,pol => cls.pred ! vf ! pol ++ ip.s ! Bare
|
||||
-- } ;
|
||||
|
||||
-- -- : Subj -> Pred -> QCl ;
|
||||
-- -- QuestCl cl = cl ** {
|
||||
-- -- pred = \\vf,pol => cl.pred ! vf ! pol
|
||||
-- -- };
|
||||
-- QuestCl cl = cl ** {
|
||||
-- subj = "adakah" ++ cl.subj;
|
||||
-- } ;
|
||||
|
||||
-- -- missing record fields: pred type of vp
|
||||
|
||||
-- -- : IP -> VP -> QCl ;
|
||||
-- -- expected: ParamTam.VForm => ParamX.Polarity => Str
|
||||
-- -- inferred: {s : ParamTam.VForm => ParamX.Polarity => Str}
|
||||
|
||||
-- QuestVP ip cl = cl ** {
|
||||
-- pred = \\vf,pol => cl.s ! vf ! pol;
|
||||
-- subj = ip.s ! Bare ;
|
||||
-- };
|
||||
|
||||
-- -- : IAdv -> Cl -> QCl ; -- why does John walk
|
||||
-- QuestIAdv iadv cls = {
|
||||
-- subj = case iadv.isPre of {
|
||||
-- True => iadv.s ++ cls.subj ; False => cls.subj
|
||||
-- } ;
|
||||
-- pred = \\vf,pol => case iadv.isPre of {
|
||||
-- True => cls.pred ! iadv.vf ! pol ;
|
||||
-- False => cls.pred ! iadv.vf ! pol ++ iadv.s
|
||||
-- } ;
|
||||
-- } ;
|
||||
|
||||
-- -- : IP -> IComp ;
|
||||
-- CompIP ip = {s = ip.s ! Bare } ; -- who (is it)
|
||||
|
||||
-- -- : IComp -> NP -> QCl ; -- where is John?
|
||||
-- QuestIComp icomp np = {
|
||||
-- pred = \\vf,pol => np.s ! Bare ;
|
||||
-- subj = icomp.s ;
|
||||
-- } ;
|
||||
|
||||
-- \\vf,pol,posadv =>
|
||||
-- -- {
|
||||
-- -- pred = \\vf,pol => ip.s ++ vp.s ! vf ! pol;
|
||||
-- -- } ;
|
||||
|
||||
--{- ----
|
||||
-- s = \\t,a,p =>
|
||||
-- let
|
||||
-- cl = oldClause slash ;
|
||||
-- cls : Direct -> Str =
|
||||
-- \d -> cl.s ! d ! t ! a ! p ! Indic ;
|
||||
---- \d -> cl.s ! ip.a ! d ! t ! a ! p ! Indic ;
|
||||
-- who = slash.c2.s ++ ip.s ! slash.c2.c
|
||||
-- in table {
|
||||
-- QDir => who ++ cls DInv ;
|
||||
-- QIndir => who ++ cls DDir
|
||||
-- }
|
||||
---}
|
||||
|
||||
--{-
|
||||
-- lin
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
-- -- : IComp -> NP -> QCl ; -- where is John?
|
||||
-- QuestIComp icomp np =
|
||||
|
||||
|
||||
-- Interrogative pronouns can be formed with interrogative
|
||||
-- determiners, with or without a noun.
|
||||
|
||||
-- -- : IDet -> CN -> IP ; -- which five songs
|
||||
-- IdetCN idet cn = {contractSTM = False} ** NS.DetCN idet cn ;
|
||||
|
||||
-- -- : IDet -> IP ; -- which five
|
||||
-- IdetIP idet = {contractSTM = False} ** NS.DetNP idet ;
|
||||
|
||||
-- They can be modified with adverbs.
|
||||
-- -- : IP -> Adv -> IP ; -- who in Paris
|
||||
-- --AdvIP = NS.AdvNP ;
|
||||
|
||||
-- Interrogative quantifiers have number forms and can take number modifiers.
|
||||
|
||||
-- -- : IQuant -> Num -> IDet ; -- which (five)
|
||||
-- IdetQuant = NS.DetQuant ;
|
||||
|
||||
-- Interrogative adverbs can be formed prepositionally.
|
||||
-- -- : Prep -> IP -> IAdv ; -- with whom
|
||||
-- PrepIP prep ip = SS.prepIP prep (ip.s ! Abs) False ;
|
||||
|
||||
-- They can be modified with other adverbs.
|
||||
|
||||
-- -- : IAdv -> Adv -> IAdv ; -- where in Paris
|
||||
-- -- AdvIAdv iadv adv =
|
||||
|
||||
-- Interrogative complements to copulas can be both adverbs and
|
||||
-- pronouns.
|
||||
|
||||
-- -- : IAdv -> IComp ;
|
||||
-- CompIAdv iadv = iadv ; -- where (is it)
|
||||
|
||||
|
||||
-- More $IP$, $IDet$, and $IAdv$ are defined in $Structural$.
|
||||
|
||||
-- Wh questions with two or more question words require a new, special category.
|
||||
|
||||
-- cat
|
||||
-- QVP ; -- buy what where
|
||||
-- fun
|
||||
-- ComplSlashIP : VPSlash -> IP -> QVP ; -- buys what
|
||||
-- AdvQVP : VP -> IAdv -> QVP ; -- lives where
|
||||
-- AddAdvQVP : QVP -> IAdv -> QVP ; -- buys what where
|
||||
|
||||
-- QuestQVP : IP -> QVP -> QCl ; -- who buys what where
|
||||
---}
|
||||
|
||||
|
||||
--}
|
||||
}
|
||||
Reference in New Issue
Block a user