Files
gf-rgl/src/greek/SymbolGre.gf
2017-06-30 15:28:27 +02:00

48 lines
1.1 KiB
Plaintext

--# -path=.:../abstract:../common:../prelude
concrete SymbolGre of Symbol =
CatGre ** open Prelude, CommonGre, ResGre in {
flags coding= utf8 ;
lin
SymbPN i = {s = \\_,_ => i.s ; g = Masc };
IntPN i = {s = \\_,_ => i.s ; g = Masc } ;
FloatPN i = {s = \\_,_ => i.s ; g = Masc } ;
NumPN i = {s = \\_,_ => i.s ! Masc ! Nom ; g = Masc } ;
CNIntNP cn i = heavyNP {
s = \\c => prepCase c ++ cn.s ! Sg!c ++ i.s ;
a = agrP3 cn.g Sg ;
hasClit = False
} ;
CNSymbNP det cn xs = let g = cn.g in heavyNP {
s = \\c => det.s ! g ! c ++ cn.s ! det.n ! c++ xs.s ;
a = agrP3 g det.n ;
hasClit = False
} ;
CNNumNP cn i = heavyNP {
s = \\c => artDef cn.g Sg c ++ cn.s ! Sg!c ++ i.s ! Masc!c ;
a = agrP3 cn.g Sg ;
hasClit = False
} ;
SymbS sy = {s = \\_ => sy.s} ;
SymbNum n = {s = \\_,_ => n.s ; isNum = True ; n = Pl} ;
SymbOrd n = {s = \\_,_,_,_ => glue n.s "." ; adv= table { Posit => " " ; Compar => " " ; Superl => " "}} ;
lincat
Symb, [Symb] = SS ;
lin
MkSymb s = s ;
BaseSymb = infixSS "και" ;
ConsSymb = infixSS "," ;
}