mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-17 00:39:32 -06:00
55 lines
1.9 KiB
Plaintext
55 lines
1.9 KiB
Plaintext
--# -path=.:alltenses
|
|
|
|
concrete DiscourseEng of Discourse =
|
|
LexiconEng,
|
|
NounEng, VerbEng,
|
|
AdjectiveEng, AdverbEng,
|
|
StructuralEng - [nobody_NP, nothing_NP],
|
|
TenseX
|
|
** open SyntaxEng, (P = ParadigmsEng), (R = ParamX), Prelude in {
|
|
|
|
lincat
|
|
Clause = {subj : NP ; vp : VP} ;
|
|
Part = Adv ;
|
|
|
|
lin
|
|
ClauseS part temp pol cl =
|
|
mkS temp pol (mkCl (mkNP cl.subj part) cl.vp) ;
|
|
SubjKinS part temp pol cl =
|
|
mkS temp pol (mkCl (mkNP (mkNP cl.subj (kin.s ! pol.p)) part) cl.vp) ;
|
|
VerbKinS part temp pol cl =
|
|
mkS temp pol (mkCl (mkNP cl.subj part) (mkVP cl.vp (kin.s ! pol.p))) ;
|
|
AdvKinS part temp pol adv cl =
|
|
mkS temp pol (mkCl (mkNP cl.subj part) (mkVP (mkVP cl.vp adv) (kin.s ! pol.p))) ;
|
|
PreAdvS part temp pol adv cl =
|
|
mkS adv (mkS part (mkS temp pol (mkCl cl.subj cl.vp))) ;
|
|
PreAdvKinS part temp pol adv cl =
|
|
mkS adv (mkS part (mkS (kin.s ! pol.p) (mkS temp pol (mkCl cl.subj cl.vp)))) ;
|
|
PreAdvSubjKinS part temp pol adv cl =
|
|
mkS adv (mkS part (mkS temp pol (mkCl (mkNP cl.subj (kin.s ! pol.p)) cl.vp))) ;
|
|
PreAdvVerbKinS part temp pol adv cl =
|
|
mkS adv (mkS part (mkS temp pol (mkCl cl.subj (mkVP cl.vp (kin.s ! pol.p))))) ;
|
|
PreAdvAdvKinS part temp pol adv1 adv2 cl =
|
|
mkS adv1 (mkS part (mkS temp pol (mkCl cl.subj (mkVP (mkVP cl.vp adv2) (kin.s ! pol.p))))) ;
|
|
|
|
PredClause subj v = {subj = subj ; vp = v} ;
|
|
|
|
--- AnterVerbS part kin t pol cl =
|
|
--- mkS t anteriorAnt pol (mkCl (mkNP cl.subj part) (mkVP cl.vp (kin.s ! pol.p))) ;
|
|
|
|
noPart = P.mkAdv [] ;
|
|
han_Part = P.mkAdv "as you know" ;
|
|
pa_Part = P.mkAdv "and nobody else" ;
|
|
pas_Part = P.mkAdv "and nobody else" ;
|
|
ko_Part = P.mkAdv "whether" ;
|
|
kos_Part = P.mkAdv "whether" ;
|
|
kohan_Part = P.mkAdv "whether" ;
|
|
pahan_Part = P.mkAdv "and nobody else as you know" ;
|
|
|
|
|
|
oper
|
|
kin : {s : R.Polarity => Adv} =
|
|
{s = table {R.Pos => P.mkAdv "too" ; R.Neg => P.mkAdv "either"}} ;
|
|
|
|
}
|