mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-06-11 08:06:34 -06:00
74 lines
2.2 KiB
Plaintext
74 lines
2.2 KiB
Plaintext
concrete VerbTur of Verb = CatTur ** open Prelude, ResTur, SuffixTur, HarmonyTur in {
|
|
|
|
lin
|
|
UseV v = v ;
|
|
SlashV2a v = v ;
|
|
|
|
Slash2V3 v = variants {} ;
|
|
Slash3V3 v = variants {} ;
|
|
SlashV2A v = variants {} ;
|
|
SlashV2V v = variants {} ;
|
|
SlashV2S v = variants {} ;
|
|
SlashV2Q v = variants {} ;
|
|
SlashVV v = variants {} ;
|
|
SlashV2VNP = variants {} ;
|
|
|
|
ComplSlash vps np = {
|
|
s = \\ vf => vps.c.s ++ np.s ! vps.c.c ++ vps.s ! vf ;
|
|
} ;
|
|
|
|
-- TODO: test this and fix.
|
|
ComplVS vs s = {
|
|
s = \\vf => s.subord ++ vs.s ! vf
|
|
} ;
|
|
|
|
ComplVA _ _ = variants {} ;
|
|
ComplVV _ _ = variants {} ;
|
|
ComplVQ _ _ = variants {} ;
|
|
|
|
UseComp comp = comp ;
|
|
CompCN _ = variants {} ;
|
|
|
|
CompNP ap = lin VP {
|
|
s = table {
|
|
VPres agr => ap.s ! Nom ++
|
|
case agr of {
|
|
{n=Sg; p=P3} => [] ;
|
|
_ => suffixStr ap.h (verbSuffixes ! agr)
|
|
} ;
|
|
VProg agr => ap.s ! Nom ;
|
|
VPast agr => ap.s ! Nom ++
|
|
suffixStr ap.h (alethicCopulaSuffixes ! agr);
|
|
VFuture agr => ap.s ! Nom ++
|
|
addSuffix "olacağ" (mkHar I_Har (SCon Hard)) (verbSuffixes ! agr) ;
|
|
VInfinitive => ap.s ! Nom ++ "olmak" ;
|
|
_ => "TODO"
|
|
}
|
|
} ;
|
|
|
|
CompAP ap = lin VP {
|
|
s = table {
|
|
VPres agr => case agr.p of {
|
|
P3 => ap.s ! Sg ! Nom ;
|
|
_ => ap.s ! agr.n ! Nom ++ suffixStr ap.h (verbSuffixes ! agr)
|
|
} ;
|
|
VProg agr => ap.s ! agr.n ! Nom ;
|
|
VPast agr => ap.s ! agr.n ! Nom ++
|
|
suffixStr ap.h (alethicCopulaSuffixes ! agr);
|
|
VFuture agr => ap.s ! agr.n ! Nom ++
|
|
addSuffix "olacağ" (mkHar I_Har (SCon Hard)) (verbSuffixes ! agr) ;
|
|
VInfinitive => ap.s ! Sg ! Nom ++ "olmak" ;
|
|
_ => "TODO"
|
|
}
|
|
} ;
|
|
|
|
CompAdv _ = variants {} ;
|
|
|
|
ReflVP = variants {} ;
|
|
|
|
AdvVP = variants {} ;
|
|
AdVVP = variants {} ;
|
|
|
|
PassV2 = variants {} ;
|
|
}
|