Files
gf-rgl/src/dutch/SymbolDut.gf
2009-11-17 19:21:21 +00:00

50 lines
1.1 KiB
Plaintext

--# -path=.:../abstract:../common
concrete SymbolDut of Symbol = CatDut ** open Prelude, ResDut in
{
lin
SymbPN i = {s = \\c => i.s ; g = Neutr} ; --- c
IntPN i = {s = \\c => i.s ; g = Neutr} ; --- c
FloatPN i = {s = \\c => i.s ; g = Neutr} ; --- c
NumPN i = {s = \\_ => i.s ! Neutr ! Nom ; g = Neutr} ; --- c
CNIntNP cn i = {
s = \\c => cn.s ! Weak ! NF Sg Nom ++ i.s ;
a = agrP3 Sg ;
isPron = False
} ;
CNSymbNP det cn xs = let g = cn.g in {
s = \\c => det.s ! g ++ cn.s ! det.a ! NF det.n Nom ++ xs.s ;
a = agrP3 det.n ;
isPron = False
} ;
CNNumNP cn i = {
s = \\c => artDef Sg cn.g ++ cn.s ! Weak ! NF Sg Nom ++ i.s ! Neutr ! Nom ;
a = agrP3 Sg ;
isPron = False
} ;
SymbS sy = {s = \\_ => sy.s} ;
SymbNum n = {s = \\_,_ => n.s ; n = Pl ; isNum = True} ;
SymbOrd n = {s = \\_ => n.s ++ "."} ;
lincat
Symb, [Symb] = SS ;
lin
MkSymb s = s ;
BaseSymb = infixSS "en" ;
ConsSymb = infixSS "," ;
oper
artDef : Number -> Gender -> Str = \n,g -> case <n,g> of {<Sg,Neutr> => "het" ; _ => "de"} ;
}