mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-06-15 10:00:11 -06:00
57 lines
1.9 KiB
Plaintext
57 lines
1.9 KiB
Plaintext
concrete PhraseRus of Phrase = CatRus ** open Prelude, ResRus in {
|
|
|
|
lin
|
|
-- : S -> Utt ; -- John walks
|
|
UttS s = {s = s.s ! Ind} ;
|
|
-- : QS -> Utt ; -- is it good
|
|
UttQS qs = {s = qs.s ! QDir} ;
|
|
|
|
-- : Pol -> Imp -> Utt ; -- (don't) love yourself
|
|
UttImpSg pol imp = {s = imp.s ! pol.p ! GSg Masc} ; -- NB: Neut used for another kind of imperative
|
|
-- : Pol -> Imp -> Utt ; -- (don't) love yourselves
|
|
UttImpPl pol imp = {s = imp.s ! pol.p ! GPl} ;
|
|
-- : Pol -> Imp -> Utt ; -- (don't) sleep (polite)
|
|
UttImpPol pol imp = {s = imp.s ! pol.p ! GPl} ;
|
|
|
|
-- : IP -> Utt ; -- who
|
|
UttIP ip = {s = ip.nom} ; --- Acc also?
|
|
|
|
-- : IAdv -> Utt ; -- why
|
|
UttIAdv iadv = iadv ;
|
|
|
|
-- : NP -> Utt ; -- this man
|
|
UttNP np = {s = np.s ! Nom} ;
|
|
|
|
-- : Adv -> Utt ; -- here
|
|
UttAdv adv = adv ;
|
|
|
|
-- : VP -> Utt ; -- to sleep
|
|
UttVP vp
|
|
= let a=Ag (GSg Neut) P3 in {
|
|
s=vp.adv ! a ++ (verbInf vp.verb) ++ vp.dep ++ vp.compl ! Pos ! a
|
|
} ;
|
|
|
|
-- : CN -> Utt ; -- house
|
|
UttCN cn = {s = cn.s ! Sg ! Nom} ;
|
|
-- : Card -> Utt ; -- five
|
|
UttCard card = {s=card.s ! Neut ! Inanimate ! Nom};
|
|
-- : AP -> Utt ; -- fine
|
|
UttAP ap = {s = ap.s ! GSg Masc ! Animate ! Nom } ;
|
|
-- : Interj -> Utt ; -- alas
|
|
UttInterj i = i ;
|
|
|
|
-- : PConj -> Utt -> Voc -> Phr ; -- but come here, my friend
|
|
PhrUtt pconj utt voc = {s = pconj.s ++ utt.s ++ voc.s} ;
|
|
|
|
-- : PConj ; -- [plain phrase without conjunction in front]
|
|
NoPConj = {s = []} ;
|
|
-- : Conj -> PConj ; -- and
|
|
PConjConj conj = {s = conj.s2} ;
|
|
|
|
-- : Voc ; -- [plain phrase without vocative]
|
|
NoVoc = {s = []} ;
|
|
-- : NP -> Voc ; -- my friend
|
|
VocNP np = {s = "," ++ np.s ! VocRus } ;
|
|
|
|
}
|