Files
gf-rgl/src/somali/PhraseSom.gf
2019-09-25 11:53:27 +02:00

34 lines
930 B
Plaintext

concrete PhraseSom of Phrase = CatSom ** open Prelude, ResSom in {
lin
PhrUtt pconj utt voc = {s = pconj.s ++ utt.s ++ voc.s} ;
UttS s = {s = s.s ! False} ;
UttQS qs = qs ;
UttIAdv iadv = iadv ;
UttImpSg pol imp =
let ha = case pol.p of {Pos => [] ; Neg => "ha"}
in {s = ha ++ imp.s ! Sg ! pol.p} ;
UttImpPl pol imp =
let ha = case pol.p of {Pos => [] ; Neg => "ha"}
in {s = ha ++ imp.s ! Pl ! pol.p} ;
UttImpPol = UttImpSg ;
UttIP ip = {s = ip.s ! Abs} ;
UttNP np = {s = np.s ! Abs} ;
UttVP vp = {s = infVP vp} ;
UttAdv adv = {s = linAdv adv} ;
UttCN n = {s = linCN n} ;
UttCard n = {s = n.s ! Mid} ;
UttAP ap = { s = ap.s ! AF Sg Abs } ;
UttInterj i = i ;
NoPConj = {s = []} ;
PConjConj conj = {s = conj.s1 ++ conj.s2 ! Indefinite} ;
NoVoc = {s = []} ;
VocNP np = { s = "," ++ np.s ! Abs } ; --TODO: vocative exists
}